重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这篇文章主要讲解了“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线程同步引用的基本代码介绍这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!