Java线程同步引用基本代码介绍

Java线程同步引用有很多的使用范围,在不断的使用中我们有很多的知识需要学习。我们可以在计算机上运行各种计算机软件程序。每一个运行的程序可能包括多个独立运行的线程。

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名与空间、虚拟空间、营销软件、网站建设、泾源网站维护、网站推广。

 
 
 
  1. public class SynTest ...{  
  2. private String firstName, lastName;  
  3. private synchronized void setName(String firstName, String lastName) ...{  
  4. print("entering setName");  
  5. this.firstName = firstName;  
  6. print("Set first name have done firstName=" + this.firstName);  
  7. try ...{  
  8. Thread.sleep(1000);  
  9. } catch (InterruptedException e) ...{  
  10. }  
  11. this.lastName = lastName;  
  12. print("set last name have done,and leave setName() method.firstName="  
  13. + this.firstName + " lastName=" + this.lastName);  
  14. }  
  15. private void print(String msg) ...{  
  16. String thread = Thread.currentThread().getName();  
  17. System.out.println(thread + ": " + msg);  
  18. }  
  19. public static void main(String[] args) ...{  
  20. // 必需声明为final,否则runnable里面的run()方法不能访问。  
  21. final SynTest test1 = new SynTest();  
  22. final SynTest test2 = new SynTest();  
  23. Runnable run1 = new Runnable() ...{  
  24. public void run() ...{  
  25. test1.setName("arzu", "guli");  
  26. }  
  27. };  
  28. Thread threadOne = new Thread(run1, "threadOne");  
  29. threadOne.start();  
  30. try ...{  
  31. Thread.sleep(200);  
  32. } catch (InterruptedException e) ...{  
  33. }  
  34. Runnable run2 = new Runnable() ...{  
  35. public void run() ...{  
  36. // 如果这个线程引用的是对象test2,则setName方法不需要同步,也可以保证程序达到预期目的。  
  37. test1.setName("kang", "midi");  
  38. }  
  39. };  
  40. Thread threadTwo = new Thread(run2, "threadTwo");  
  41. threadTwo.start();  
  42. System.out.println("main() exit");  
  43. }  

以上就是对Java线程同步引用的详细介绍。

文章标题:Java线程同步引用基本代码介绍
文章分享:http://www.gawzjz.com/qtweb2/news11/8211.html

成都网站建设公司_创新互联,为您提供虚拟主机App设计外贸建站品牌网站制作移动网站建设网站维护

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联