说起多线程的两个修饰符,保证线程安全首先就会想到synchronized和voiltile这两个。 为什么会出现线程不安全? 多线程是相对cpu指令的,cpu本身是对一个又一个指令进行顺序执行的。多线程就是卡单个指令节点进行插入执行(这里说法估计有点问题,以后想起来再改吧)。jdk本身提供了对多个线 ...
分类:
其他好文 时间:
2020-06-27 00:02:10
阅读次数:
71
线程安全 当多个线程同时访问一个对象时,如果不用考虑这些线程在运行时环境下的调度和交替执行,也不需要进行额外的同步,或者在调用方进行任何其他的协调操作,调用这个对象的行为都可以获得正确的结果,那就称这个对象是线程安全的 Brian Goetz 多线程安全问题是什么? 问题: 多线程在修改共享资源的时 ...
分类:
编程语言 时间:
2020-06-26 18:37:58
阅读次数:
78
J.U.C AQS 原理 全称是 AbstractQueuedSynchronizer,是阻塞式锁和相关的同步器工具的框架 特点: 用 state 属性来表示资源的状态(分独占模式和共享模式),子类需要定义如何维护这个状态,控制如何获取 锁和释放锁 getState - 获取 state 状态 se ...
分类:
其他好文 时间:
2020-06-26 18:09:03
阅读次数:
50
(一)饿汉式 不存在线程安全问题 直接实例化(简洁直观) 枚举式(最简洁) 静态代码块(适合复杂实例化) (二)饿汉式 : 延迟创建对象 线程不安全(适用于单线程) 线程安全(适用于多线程) 静态内部类形式(适用于多线程) 学而不思则。。。。 ...
分类:
其他好文 时间:
2020-06-26 14:55:43
阅读次数:
61
垃圾收集器与内存分配策略 对象存活判断 引用计数算法 给对象添加一个计数器,每有一个引用+1,当引用失效-1,若为0则不在被使用. 可达性分析算法 对象是否可到达GC roots 或者说GC roots 是否是对象的上层节点(祖父节点,父节点) GC roots 虚拟机栈(栈中的本地变量表)中引用的 ...
分类:
其他好文 时间:
2020-06-26 14:23:08
阅读次数:
97
1、Thread多线程编程举例 关键字:前台线程,后台线程,线程优先级,线程休眠,线程阻塞。 1 class MultiThreadingApplication { 2 static void Main(string[] args) { 3 //Thread thread1 = new Thread ...
分类:
编程语言 时间:
2020-06-26 13:00:28
阅读次数:
140
Node.js是什么 Node.js is a javascript runtime built on Chormes's V8 javaScript engine Node.js 不是一门语言 Node.js 不是库,不是框架 是javaScript运行时环境 简单点来讲node.js可以解析和执 ...
分类:
其他好文 时间:
2020-06-26 01:43:16
阅读次数:
88
SpringMvc 的控制器是不是单例模式,如果是,有什么问题,怎么解决? 问题:单例模式,在多线程访问时有线程安全问题 解决方法:不要用同步,在控制器里面不能写字段 SpringMvc 中控制器的注解? @Controller:该注解表明该类扮演控制器的角色 @RequestMapping 注解用 ...
分类:
编程语言 时间:
2020-06-26 01:19:14
阅读次数:
238
为什么需要线程间的通信 多个线程并发执行时,在默认情况下CPU时随机切换线程的,当我们需要多个线程共同完成一件任务,并且 希望他们有规律的执行,那么多线程之间需要一些协调通信,以此来帮我们达到多线程共同操作一份数据。 如何保证线程间通信有效利用资源 多个线程在处理同一个资源,并且任务不同时,需要线程 ...
分类:
编程语言 时间:
2020-06-25 23:48:03
阅读次数:
111