09.Java 多线程
Lizza~
stay Hungary,stay Foolish
展开
-
四、Java并发编程:并发编程基础
一、线程简介 1. main线程 操作系统每启动一个应用程序都会为其开启一个进程;而在进程里面又可以创建很多线程;Java中运行main方法时,除了main线程,还会启动其他的线程,下面利用JMX来查看: public static void main(String[] args) { //获取Java线程管理MXBean ThreadMXBean bean = ManagementFacto...原创 2019-05-19 19:16:27 · 142 阅读 · 0 评论 -
三、Java并发编程:Java内存模型
一、Java内存模型的基础 1. 并发编程模型的两个关键问题 并发编程模型的两个关键问题:线程之间如何通信和如何同步 线程之间如何通信? 命令式编程 线程之间的通过消息传递来进行显示通信 共享内存并发模型 线程之间共享内存中的程序的公共状态进行隐式通信 线程之间如何同步? 线程之间同步是指控制线程之间代码执行的先后顺序 命令式编程 命令式编程线程之间的同步是隐式...原创 2019-05-14 22:30:41 · 195 阅读 · 0 评论 -
一、Java并发编程:多线程简介及入门案例
一、Java多线程简介 1. 什么是多线程(multithreading) 多线程(multithreading)是指从软件或者硬件上实现多个线程并发执行的技术。 2. 并发和并行 并发:在一段时间间隔内,在一个处理器上,通过cpu调度算法,先后完成指令执行 并行:在一段时间间隔内,在多个处理器上,同时指令执行 3. 进程和线程 进程:是系统进行资源分配和调度的基本单位,是线程的容器,一个进...原创 2019-05-07 16:31:37 · 225 阅读 · 0 评论 -
二、Java并发编程:Java并发机制的底层原理
一、线程安全问题 1. 一个典型的线程不安全的例子 多个线程同时操作同一份资源的(主要是进行读写操作)时候,就有可能会发生线程安全问题;比如两个人同时对同一个账户进行取款操作的时候,就有可能会出现余额为负数的结果。 示例:两个人同时操作一个账户 package concurrency.account; /** * 账户类,主要记录账户余额,以及提供取款方法 * @author lt *...原创 2019-05-11 23:47:17 · 142 阅读 · 0 评论