成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Java多線程方案如何處理關鍵代碼

開發 后端
Java多線程方案需要我們不斷的注意相關代碼的編寫,下面我們就看看如何才能更好的進行學習。希望大家在不斷的學習中掌握相關知識。

Java多線程方案在不斷的完善中已經找到了自己的各種缺點,下面我們就來看看如何才能更好的學習相關問題。希望大家在不斷的學習中有所收獲,自由在不斷的學習中才能更好的進行掌握Java多線程方案。

1、當每個迭代彼此獨立,并且完成循環體中每個迭代的工作,意義都足夠重大,足以彌補管理一個新任務的開銷時,這個順序循環是適合并行化的。

2、Java多線程方案關鍵代碼如下:

 

  1. public<T> voidParallelRecursive(final Executorexec,List<Node<T>>nodes,Collection<T> results){  
  2. for(Node<T> n:nodes){  
  3. exec.execute(new Runnable(){  
  4. public void run(){  
  5. results.add(n.compute());  
  6. }  
  7. });  
  8. parallelRecursive(exec,n.getChildren(),results);  
  9. }  
  10. }  
  11. public<T>Collection<T>getParallelResults(List<Node<T>>nodes)  
  12. throws InterruptedException{  
  13. ExecutorService exec=Executors.newCachedThreadPool();  
  14. Queue<T> resultQueue=newConcurrentLinkedQueue<T>();  
  15. parallelRecursive(exec,nodes,resultQueue);  
  16. exec.shutdown();  
  17. exec.awaitTermination(Long.MAX_VALUE,TimeUnit.SECONDS);  
  18. return reslutQueue;  

 

但是以上程序不能處理不存在任何方案的情況,而下列程序可以解決這個問題

 

  1. public class PuzzleSolver<P,M>extendsConcurrentPuzzleSolver<P,M>{  
  2. ...  
  3. privatefinal AtomicInteger taskCount=new AtomicInteger(0);  
  4. protectedRunnable newTask(P p,M m,Node<P,M>n){  
  5. return new CountingSolverTask(p,m,n);  
  6. }  
  7. classCountingSolverTask extends SolverTask{  
  8. CountingSolverTask(P pos,Mmove,Node<P,M> prev){  
  9. super(pos,move,prev);  
  10. taskCount.incrementAndGet();  
  11. }  
  12. publicvoid run(){  
  13. try{  
  14. super.run();  
  15. }  
  16. finally{  
  17. if (taskCount.decrementAndGet()==0)  
  18. solution.setValue(null);  
  19. }  
  20. }  
  21. }  

 

以上就是Java多線程方案關鍵代碼的詳細介紹。

【編輯推薦】

  1. Java多線程操作相關問題總結
  2. 如何理解Java多線程編程的相關問題
  3. Java多線程信號量如何控制相關資源
  4. Java多線程鎖如何進行數據同步共享
  5. 帶你走進Java多線程編程的神秘世界
責任編輯:張浩 來源: IT168
相關推薦

2010-03-16 11:05:53

Java while循

2010-03-15 18:11:38

Java多線程

2024-08-29 08:54:35

2023-02-02 08:56:25

線程池線程submit

2010-03-16 14:20:57

Java多線程調試

2015-11-18 18:56:36

Java多線程處理

2010-03-15 17:56:23

Java多線程

2017-05-27 20:59:30

Java多線程synchronize

2025-02-04 11:45:23

2010-03-16 19:46:14

Java線程函數

2009-06-29 18:14:23

Java多線程volatile關鍵字

2019-08-15 10:20:19

云計算技術安全

2024-09-26 10:51:51

2018-06-08 09:12:48

微軟

2010-03-17 18:04:55

java Socket

2010-03-17 10:53:39

java doc線程

2011-12-15 12:32:19

JavaNIO

2010-03-17 19:24:38

Java多線程循環

2009-09-14 19:39:14

批量線程同步

2009-03-12 10:52:43

Java線程多線程
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 男女激情网站免费 | 日韩欧美国产电影 | 国产一区二区激情视频 | 亚洲欧美另类在线 | 国产女人与拘做视频免费 | 精品一区二区三区av | 亚洲欧美激情视频 | av网站免费 | 成人精品福利 | 亚洲欧美成人在线 | 黄色在线网站 | 久久综合成人精品亚洲另类欧美 | 一级片在线视频 | 亚洲一区高清 | 欧美一级毛片在线播放 | 日韩欧美一级精品久久 | 91精品国产92| 成人自拍视频网站 | 国产一级片 | 日韩国产在线 | www.888www看片| 亚洲一区二区三区 | 国产在线观看一区 | 女同av亚洲女人天堂 | 久久av影院 | 久久精品国产一区二区电影 | 成人精品久久日伦片大全免费 | 365夜爽爽欧美性午夜免费视频 | 午夜精品在线观看 | 人人玩人人干 | 黄色一级免费 | 亚洲精品一区二区 | 不卡在线视频 | 亚洲国产一区二区三区在线观看 | 蜜臀久久99精品久久久久久宅男 | 国产伦一区二区三区视频 | 亚洲精品久久久久久久不卡四虎 | 国产精品成人一区二区三区 | 麻豆国产一区二区三区四区 | 精品99在线 | 日韩欧美一级精品久久 |