java涓璦rrayblockingqueue鎬庝箞浣跨敤
ArrayBlockingQueue鏄竴涓熀浜庢暟缁勭殑鏈夌晫闃诲闃熷垪锛屽畠鐨勫ぇ灏忔槸鍥哄畾鐨勶紝鍙互鍦ㄥ垵濮嬪寲鏃舵寚瀹氬閲忋€備笅闈㈡槸ArrayBlockingQueue鐨勫熀鏈娇鐢ㄦ柟娉曪細
- 鍒涘缓ArrayBlockingQueue瀵硅薄锛?/li>
ArrayBlockingQueue<String> queue = new ArrayBlockingQueue<>(10);
- 娣诲姞鍏冪礌鍒伴槦鍒楋細
queue.put("element"); // 灏嗗厓绱犳坊鍔犲埌闃熷垪涓紝濡傛灉闃熷垪宸叉弧浼氶樆濉炵瓑寰?/span>
- 浠庨槦鍒椾腑鑾峰彇鍏冪礌锛?/li>
String element = queue.take(); // 浠庨槦鍒椾腑鑾峰彇鍏冪礌锛屽鏋滈槦鍒椾负绌轰細闃诲绛夊緟
- 鑾峰彇闃熷垪澶у皬锛?/li>
int size = queue.size(); // 鑾峰彇闃熷垪涓殑鍏冪礌涓暟
- 鍒ゆ柇闃熷垪鏄惁涓虹┖锛?/li>
boolean isEmpty = queue.isEmpty(); // 鍒ゆ柇闃熷垪鏄惁涓虹┖
- 鍒ゆ柇闃熷垪鏄惁宸叉弧锛?/li>
boolean isFull = queue.remainingCapacity() == 0; // 鍒ゆ柇闃熷垪鏄惁宸叉弧
闇€瑕佹敞鎰忕殑鏄紝鍦ㄤ娇鐢ˋrrayBlockingQueue鏃讹紝put鍜宼ake鏂规硶浼氶樆濉炲綋鍓嶇嚎绋嬶紝鐩村埌闃熷垪鏈夌┖闂存坊鍔犲厓绱犳垨鑰呮湁鍏冪礌鍙互琚彇鍑恒€傚彲浠ユ牴鎹叿浣撲笟鍔¢渶姹備娇鐢ㄤ笉鍚岀殑鏂规硶鏉ュ鐞嗛槦鍒椾腑鐨勫厓绱犮€?/p>
相关问答