Java 多线程------解决 实现继承 Thread类 方式线程的线程安全问题 方式二:同步方法
2021/10/17 17:39:25
本文主要是介绍Java 多线程------解决 实现继承 Thread类 方式线程的线程安全问题 方式二:同步方法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1 package bytezero.threadsynchronization; 2 3 4 5 /** 6 * 使用同步方法解决实现 继承 Thread类 的线程安全问题 7 * 8 * 9 * 10 * @author Bytezero1·zhenglei! Email:420498246@qq.com 11 * create 2021-10-17 16:38 12 */ 13 class WindowM extends Thread{ 14 private static int ticket = 100; 15 16 @Override 17 public void run() { 18 while (true){ 19 20 show(); 21 } 22 } 23 24 private static synchronized void show(){ //同步监视器:WindowM.class 25 // private synchronized void show(){ //同步监视器: w1 w2 w3 此种解决方式是错误的 26 if(ticket > 0){ 27 try { 28 Thread.sleep(100); 29 } catch (InterruptedException e) { 30 e.printStackTrace(); 31 } 32 System.out.println(Thread.currentThread().getName() + ":卖票,票号为:"+ticket); 33 ticket--; 34 } 35 } 36 37 } 38 39 40 public class WindowMethod { 41 public static void main(String[] args) { 42 WindowM w1 = new WindowM(); 43 WindowM w2 = new WindowM(); 44 WindowM w3 = new WindowM(); 45 46 w1.setName("窗口1"); 47 w2.setName("窗口2"); 48 w3.setName("窗口3"); 49 50 w1.start(); 51 w2.start(); 52 w3.start(); 53 54 } 55 56 }
........
这篇关于Java 多线程------解决 实现继承 Thread类 方式线程的线程安全问题 方式二:同步方法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-19《2023版Java工程师》课程升级公告
- 2024-06-15matplotlib作图不显示3D图,怎么办?
- 2024-06-1503-Loki 日志监控
- 2024-06-1504-让LLM理解知识 -Prompt
- 2024-06-05做软件测试需要懂代码吗?
- 2024-06-0514-ShardingSphere的分布式主键实现
- 2024-06-03为什么以及如何要进行架构设计权衡?
- 2024-05-31全网首发第二弹!软考2024年5月《软件设计师》真题+解析+答案!(11-20题)
- 2024-05-31全网首发!软考2024年5月《软件设计师》真题+解析+答案!(21-30题)
- 2024-05-30【Java】百万数据excel导出功能如何实现