这篇文章主要讲解了“Java线程同步引用的基本代码介绍”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java线程同步引用的基本代码介绍”吧!Java线程同步引用有很多的使用范围,在不断的使用
这篇文章主要讲解了“Java线程同步引用的基本代码介绍”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java线程同步引用的基本代码介绍”吧!
Java线程同步引用有很多的使用范围,在不断的使用中我们有很多的知识需要学习。我们可以在计算机上运行各种计算机软件程序。每一个运行的程序可能包括多个独立运行的线程。
public class SynTest ...{ private String firstName, lastName; private synchronized void setName(String firstName, String lastName) ...{ print("entering setName"); this.firstName = firstName; print("Set first name have done firstName=" + this.firstName); try ...{ Thread.sleep(1000); } catch (InterruptedException e) ...{ } this.lastName = lastName; print("set last name have done,and leave setName() method.firstName=" + this.firstName + " lastName=" + this.lastName); } private void print(String msg) ...{ String thread = Thread.currentThread().getName(); System.out.println(thread + ": " + msg); } public static void main(String[] args) ...{ // 必需声明为final,否则runnable里面的run()方法不能访问。 final SynTest test1 = new SynTest(); final SynTest test2 = new SynTest(); Runnable run1 = new Runnable() ...{ public void run() ...{ test1.setName("arzu", "guli"); } }; Thread threadOne = new Thread(run1, "threadOne"); threadOne.start(); try ...{ Thread.sleep(200); } catch (InterruptedException e) ...{ } Runnable run2 = new Runnable() ...{ public void run() ...{ // 如果这个线程引用的是对象test2,则setName方法不需要同步,也可以保证程序达到预期目的。 test1.setName("kang", "midi"); } }; Thread threadTwo = new Thread(run2, "threadTwo"); threadTwo.start(); System.out.println("main() exit"); } }
感谢各位的阅读,以上就是“Java线程同步引用的基本代码介绍”的内容了,经过本文的学习后,相信大家对Java线程同步引用的基本代码介绍这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!
--结束END--
本文标题: Java线程同步引用的基本代码介绍
本文链接: https://lsjlt.com/news/290405.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0