首页 > 代码库 > 关于多线程Thread.Stop()破坏原子性
关于多线程Thread.Stop()破坏原子性
public class Main { public static void main(String[] args) { // TODO Auto-generated method stub MutiThread t=new MutiThread(); Thread t1=new Thread(t); /*多线程断点调试,错误结果,如果在此处执行断点,t1执行完毕,numa回复正确状态-------此处注意*/ t1.start(); for(int i=0;i<5;i++){ new Thread(t).start(); } t1.stop(); }}public class MutiThread implements Runnable { int numa=0; @Override public void run() { // TODO Auto-generated method stub synchronized (this) { numa++; try{ Thread.sleep(1000); }catch(Exception e){ e.printStackTrace(); } numa--; String stn=Thread.currentThread().getName(); System.out.println(stn+" numa= " + numa); } } }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。