java多執行緒訊息佇列的實現

2021-07-03 07:44:08 字數 886 閱讀 2657

1、定義乙個佇列快取池:

private static list queuecache = new linkedlist();
2、定義佇列緩衝池最大訊息數,如果達到該值,那麼佇列檢入將等待檢出低於該值時繼續進行。

private integer offermaxqueue = 2000;
3、定義檢出執行緒,如果佇列緩衝池沒有訊息,那麼檢出執行緒會執行緒等待中

new thread()

queue queue = queuecache.remove(0);

if(isiplock(queuestr))else

size = queuecache.size();

if(size=0)

}} catch (exception e) finally catch (execption e)

}}}.start();

4、檢入佇列

synchronized (queuecache)  catch (interruptedexception e) 

}//if

if(size<=offermaxqueue&&size>0)

break;//檢入完畢

}//while

}

5、鎖方法實現

/**

* 鎖* @param ip

* @return

* @throws

*/public boolean islock(string queuestr)

//解鎖

public

void uniplock(string queuestr)

}

java多執行緒 訊息佇列的實現

1 定義乙個佇列快取池 private static list queuecache new linkedlist 2 定義佇列緩衝池最大訊息數,如果達到該值,那麼佇列檢入將等待檢出低於該值時繼續進行。private integer offermaxqueue 2000 3 定義檢出執行緒,如果佇列...

java多執行緒 訊息佇列

1 定義乙個佇列快取池 private static list queuecache new linkedlist 2 定義佇列緩衝池最大訊息數,如果達到該值,那麼佇列檢入將等待檢出低於該值時繼續進行。private integer offermaxqueue 2000 3 定義檢出執行緒,如果佇列...

利用多執行緒與訊息佇列實現聊天

在是乙個簡易聊天中提到,乙個程序只能做一件事,其實不然,只是當時沒有涉及到執行緒的概念。所以今天在用多執行緒來實現一次。依舊是兩個程式,每個程式包含兩個執行緒。include include include include include include include include includ...