
Java中如何使方法线程安全
1个回答
展开全部
线程不安全的场合很多,比如像操作系统中的用户界面、打印机等外设、控制台输出,都不允许并发(设想两个程序同时要输出文字到同一个屏幕,那还不乱套了)
在代码中,每个线程有自己的堆栈但是共享整个堆,所以访问那些全局的变量,也必须同步,否则会出现脏读数据。
同步也不是万能的良药。不当的锁定会导致程序死锁,而且多线程本身就是为了提高性能,但是同步使用多了,程序又实质上退化成了单线程程序,用多线程的意义也就没了。
在代码中,每个线程有自己的堆栈但是共享整个堆,所以访问那些全局的变量,也必须同步,否则会出现脏读数据。
同步也不是万能的良药。不当的锁定会导致程序死锁,而且多线程本身就是为了提高性能,但是同步使用多了,程序又实质上退化成了单线程程序,用多线程的意义也就没了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |