多线程
天涯狂客~
面朝大海,春暖花开
展开
-
Java 多线程之volatile与synchronized区别
Volatile 并发编程中volatile和synchronize这两个关键字并不少见,可以理解为volatile就是轻量级synchronized,java多线程支持多个线程同时访问一个成员变量或对象,所以两个关键字都保证了共享变量的可见性,可见性就是当一个线程修改一个共享变量,另一个线程读取到这个共享变量被操作之后的值 随着jdk版本的迭代,synchronized关键字也被优化的很好,...原创 2020-02-23 15:48:42 · 153 阅读 · 0 评论 -
Java 多线程之等待唤醒机制和了解线程池-4
等待唤醒机制 线程间通信 多个线程处理同一个资源,但是处理的动作(线程的任务)却不同 就是上一篇文章的例子 Java 多线程之线程状态-3里面列举的生产者跟消费者的Demo !!!为什么要处理线程间通信!!! 多个线程并发执行时,默认情况CPU随机切换线程的,当我们需要多个线程来完成同一个任务 我们希望他们有规律执行,那么多线程之间需要一些协调通信,以此来帮我们达到多线程共同操作一份数据 ...原创 2020-02-12 21:09:35 · 171 阅读 · 0 评论 -
Java 多线程之线程状态-3
线程状态 线程状态概述 线程创建并启动,既不是一启动就进入执行状态,也不是一直处于执行状态 API java.lang.Thread.State 枚举类给出六种线程状态 Timed Waiting(计时等待) Timed Waiting在API描述为:一个正在限时等待另一个线程执行一个唤醒动作的线程处于这一状态 上一篇文章 Java 多线程之线程安全-2我写过一个卖票的Demo 在r...原创 2020-02-12 08:51:20 · 185 阅读 · 0 评论 -
Java 多线程之线程安全-2
1线程安全问题 如果有多个线程同时运行,而这些线程可能会同时运行这段代码,程序每次运行结果和单线程运行的结果是一样的,而且其他的变量的值 和预期的是一样的,就是线程安全的 !!!举个卖票的例子!!! 代码 public class RunnableImpl implements Runnable { // 定义一个多个线程共享票源 private int ticket =...原创 2020-02-06 12:11:01 · 1310 阅读 · 0 评论 -
Java 多线程之线程实现的方式-1
1.并发与并行 1.1并发 并发:指两个或多个时间在同一时间段内发生(交替执行) 1.2并行 并行:指两个或多个时间在同一时刻发生(同时发生) 2.线程和进程 2.1进程 是指一个内存中运行的应用程序,每个进程都有一个独立的内存空间,一个应用程序可以同时运行多个进程 进程也是程序一次执行过程,是系统运行程序的基本单位,系统运行一个程序即是一个进程从创建,运行 到消亡的过程 2....原创 2020-02-05 10:24:41 · 228 阅读 · 0 评论