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

Java線程控制權源代碼的深入探討

開發 后端
Java編程語言一直在不斷的發展,但是Java線程控制權卻一直是重中之重。下面我們就來看看在Java中詳細的介紹希望大家有所收獲。

Java線程控制權的問題十分重要,我們在不斷的學習中需要不斷的注意相關的問題。下面我們就來看看在源代碼中Java線程控制權式如何體現的。當wait的時候其實就是已經放出了線程的控制權,所以one可以運行。one運行時調用notify后又喚醒了two線程所以打印順序才是:

wait
sleep
wake up

我覺得我解釋的已經很清楚了。wait被調用的時候放棄鎖,而控制線程是否能使用內容的關鍵就在于鎖,wait并不是thread的內容,而來自于object。你可以這樣來理解wait,我wait下就把接力棒交出去了,我當前的這個線程就暫停運行,記住是當前的線程。然后當我交出的接力棒已經又回到我手中的時候,也就是說其他的線程已經完成了任務。這個時候我拿到接力棒繼續奔跑。

有時候你應該把問題簡單化,建議你看看thinking in java第四版,我明白你是想觀察阻塞的出現,你可以將one。start放到two。start的上邊就會明白什么意思了
 

  1. package test;  
  2. import java.util.LinkedList;  
  3. public class Test_2_A2 {  
  4. public static void main(String[] args) {  
  5. SubTreadOne one = new SubTreadOne();  
  6. SubTreadTwo two = new SubTreadTwo(one);  
  7. two.start();  
  8. try {  
  9. Thread.sleep(1000);  
  10. } catch (InterruptedException e) {  
  11. e.printStackTrace();  
  12. }  
  13. one.start();  
  14. }  
  15. }  
  16. class SubTreadOne extends Thread {  
  17. public SubTreadOne() {  
  18. }  
  19. public void run() {  
  20. try {  
  21. System.out.println("sleep");  
  22. Thread.sleep(3000);  
  23. synchronized (this) {  
  24. this.notifyAll();  
  25. }  
  26. }catch (InterruptedException e) {  
  27. e.printStackTrace();  
  28. }  
  29. }  
  30. }  
  31. class SubTreadTwo extends Thread {  
  32. SubTreadOne one;  
  33. public SubTreadTwo(SubTreadOne one) {  
  34. this.one = one;  
  35. }  
  36. public SubTreadTwo() {  
  37. }  
  38. public void run() {  
  39. try {  
  40. synchronized (one) {  
  41. System.out.println("wait");  
  42. one.wait();  
  43. System.out.println("wake up");  
  44. }  
  45. } catch (InterruptedException e) {  
  46. e.printStackTrace();  
  47. }  
  48. }  

以上就是對Java線程控制權有關代碼的詳細介紹。

【編輯推薦】

  1. 使用Java多線程實現任務分發
  2. 用Java多線程實現無阻塞讀取遠程文件
  3. Java多線程中wait語句的具體使用方法
  4. Java多線程如何解決關鍵字封鎖問題
  5. Java多線程如何創建多個線程
責任編輯:張浩 來源: 互聯網
相關推薦

2010-03-15 16:31:34

Java多線程

2009-12-23 16:13:00

WPF Attache

2024-11-05 16:29:57

2011-02-25 09:23:00

Java類加載器

2015-09-02 08:57:56

JavaHashMap工作原理

2010-03-31 14:58:03

云計算

2009-12-07 16:07:03

PHP類的繼承

2010-07-21 09:38:15

PHP緩存技術

2010-11-22 14:18:32

MySQL鎖機制

2009-11-20 17:17:08

Oracle函數索引

2021-05-17 05:36:02

CSS 文字動畫技巧

2009-06-16 10:51:14

Java源碼

2009-10-16 18:20:07

綜合布線系統

2009-12-01 16:34:21

PHP表單

2023-10-23 12:35:36

Golang追加操作

2024-12-26 01:07:13

2010-03-05 13:44:00

Python序列

2009-08-27 11:27:58

foreach語句C# foreach語

2023-01-12 17:18:06

數據庫多云

2009-12-11 11:08:31

靜態路由策略
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 奇米影视77 | 精品欧美一区二区三区久久久 | 日韩精品久久久久久 | 久视频在线 | 久久免费观看一级毛片 | 日韩精品在线看 | 亚洲视频三 | 国产精品一区二区av | 久久久久久亚洲精品不卡 | 久久免费精品 | 免费黄色的网站 | 爱高潮www亚洲精品 中文字幕免费视频 | 狠狠干美女 | 国产精品一区二区在线 | 巨大荫蒂视频欧美另类大 | 天天草天天射 | 欧美另类视频在线 | 色久电影 | 国产一区在线免费观看 | 久久久久久久久久影视 | 欧美性久久久 | 插插插干干干 | 免费在线a视频 | 午夜私人影院在线观看 | 在线视频中文字幕 | 久久黄色网 | 噜久寡妇噜噜久久寡妇 | 日本a视频 | 日韩一区二区在线视频 | 中文字幕高清视频 | 亚洲天堂成人在线视频 | 91精品一区二区三区久久久久 | 中文字幕第100页 | 日韩一级二级片 | 久久网日本| 好婷婷网| 日韩午夜影院 | 亚洲高清在线观看 | 91亚洲国产成人精品一区二三 | 欧美精品影院 | 欧美日一区二区 |