并发编程详细整理
Posted lingluo2017
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了并发编程详细整理相关的知识,希望对你有一定的参考价值。
一.线程状态的切换
5种
二.深入理解run()和start()
run方法就是普通对象的普通方法,只有调用了start()后,Java才会将线程对象和操作系统中实际的线程进行映射,再来执行run方法
package concurrent; /** * start()和run()的区别 */ public class StartAndRun { public static class ThreadRun extends Thread{ @Override public void run() { int i = 90; while(i>0){ try { Thread.sleep(1000); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println("I am "+Thread.currentThread().getName() +" and now the i="+i--); } } } public static void main(String[] args) { ThreadRun beCalled = new ThreadRun(); beCalled.setName("BeCalled"); beCalled.run(); //beCalled.start(); } }
运行结果:
放开start(),注释run()之后:
以上是关于并发编程详细整理的主要内容,如果未能解决你的问题,请参考以下文章
全栈编程系列SpringBoot整合Shiro(含KickoutSessionControlFilter并发在线人数控制以及不生效问题配置启动异常No SecurityManager...)(代码片段
JUC并发编程 共享模式之工具 JUC CountdownLatch(倒计时锁) -- CountdownLatch应用(等待多个线程准备完毕( 可以覆盖上次的打印内)等待多个远程调用结束)(代码片段