线程的问题

线程的问题,第1张

线程的问题

Java线程同步有5种方法:

1、同步方法,使用 synchronized关键字,可以修饰普通方法、静态方法,以及语句块。

2、同步代码块,用synchronized关键字修饰语句块。被该关键字修饰的语句块会自动被加上内置锁,从而实现同步

3、使用特殊域变量(volatile)实现线程同步。

4、使用重入锁实现线程同步,在JavaSE5.0中新增了一个java.util.concurrent包来支持同步。

5、使用局部变量实现线程同步,如果使用ThreadLocal管理变量,则每一个使用该变量的线程都获得该变量的副本,副本之间相互独立,这样每一个线程都可以随意修改自己的变量副本,而不会对其他线程产生影响。Java线程同步有5种方法:

1、同步方法,使用 synchronized关键字,可以修饰普通方法、静态方法,以及语句块。

2、同步代码块,用synchronized关键字修饰语句块。被该关键字修饰的语句块会自动被加上内置锁,从而实现同步

3、使用特殊域变量(volatile)实现线程同步。

4、使用重入锁实现线程同步,在JavaSE5.0中新增了一个java.util.concurrent包来支持同步。

5、使用局部变量实现线程同步,如果使用ThreadLocal管理变量,则每一个使用该变量的线程都获得该变量的副本,副本之间相互独立,这样每一个线程都可以随意修改自己的变量副本,而不会对其他线程产生影响。

线程与进程的区别

1、根本区别:进程是资源分配最小单位,线程是程序执行的最小单位。

2、地址空间:进程有自己独立的地址空间,每启动一个进程,系统都会为其分配地址空间,建立数据表来维护代码段、堆栈段和数据段;线程没有独立的地址空间,同一进程的线程共享本进程的地址空间

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5716631.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-18
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存