java – 线程同步 – 如何交替执行线程
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – 线程同步 – 如何交替执行线程,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含728字,纯文字阅读大概需要2分钟。
内容图文
我一直在尝试使用wait()和notify()来解决涉及线程通信的问题.基本上我有2个线程T1和T2,我希望它们按以下顺序执行
T1,T2,T1,T2 ……我怎样才能做到这一点?
实际问题:有2个线程T1 – 打印奇数(比如1 – 100)和T2 – 打印偶数(1 – 100).现在,输出应该是1,2,3,4,5,…… 100
解决方法:
您描述了生产者 – 消费者模式.
它是在许多Java书籍中描述的java实现,包括M.Grand“Patterns in Java.Volume I”和Naughton and Schildt的“Java 2:The Complete Reference”.
基本思路:两个线程都应该使用1个监视器(即它们的代码应该在synchronized(monitor){}块内).您还需要一些标志变量,它应该指示当前两个线程中的哪一个应该工作.
当你的一个线程在同步块内时,它应该检查标志变量是否轮到他完成这项工作.如果是,请让它工作,然后更改标志值,然后通知所有等待的线程.如果不是,那么它应该等待.
内容总结
以上是互联网集市为您收集整理的java – 线程同步 – 如何交替执行线程全部内容,希望文章能够帮你解决java – 线程同步 – 如何交替执行线程所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。