java多线程
包括锁机制和线程安全等
Mr.Hello
毕业于辽宁石油化工大学,计算机专业。先后从事研发工程师,研发组长后进入唱吧科技有限公司担任大数据工程师。现是辽宁沈阳东软集团股份有限公司一名项目负责人。学习的路上就是不断打破认知从而不断突破,任重而道远,希望有你陪伴。
展开
-
多线程1---java多线程入门以及简单应用
多线程快速入门 线程与进程区别 每个正在系统上运行的程序都是一个进程。每个进程包含一到多个线程。线程是一组指令的集合,或者是程序的特殊段,它可以在程序里独立执行。也可以把它理解为代码运行的上下文。所以线程基本上是轻量级的进程,它负责在单个程序里执行多任务。通常由操作系统负责多个线程的调度和执行。 使用线程可以把占据时间长的程序中的任务放到后台去处理,程序的运行速度可能加快,在一些等待的任务实现上如用户输入、文件读写和网络收发数据等,线程就比较有用了。在这种情况下可以释放一些珍贵的资源如内存占用等.转载 2020-05-25 17:30:46 · 151 阅读 · 0 评论 -
多线程2---线程安全以及锁机制
并发编程之多线程线程安全 什么是线程安全? 为什么有线程安全问题? 当多个线程同时共享,同一个全局变量或静态变量,做写的操作时,可能会发生数据冲突问题,也就是线程安全问题。但是做读操作是不会发生数据冲突问题。 案例:需求现在有100张火车票,有两个窗口同时抢火车票,请使用多线程模拟抢票效果。 代码: public class ThreadTrain implements Runnable { private int trainCount = 100; ...原创 2020-05-28 13:57:13 · 151 阅读 · 0 评论 -
多线程3---Java内存模型以及Volatile与Synchronized区别
Java内存模型 共享内存模型指的就是Java内存模型(简称JMM),JMM决定一个线程对共享变量的写入时,能对另一个线程可见。从抽象的角度来看,JMM定义了线程和主内存之间的抽象关系:线程之间的共享变量存储在主内存(main memory)中,每个线程都有一个私有的本地内存(local memory),本地内存中存储了该线程以读/写共享变量的副本。本地内存是JMM的一个抽象概念,并不真实存在。它涵盖了缓存,写缓冲区,寄存器以及其他的硬件和编译器优化。 从上图来看,线程A与线程B之间如要通信的话,.原创 2020-05-28 14:01:35 · 92 阅读 · 0 评论 -
多线程4---多线程之间实现通讯原理
多线程之间如何实现通讯 什么是多线程之间通讯? 多线程之间通讯,其实就是多个线程在操作同一个资源,但是操作的动作不同。 画图演示 多线程之间通讯需求 需求:第一个线程写入(input)用户,另一个线程取读取(out)用户.实现读一个,写一个操作。 代码实现基本实现 共享资源源实体类 class Res { public String userSex; public String userName; } ...原创 2020-06-02 10:35:34 · 171 阅读 · 0 评论