会员
周边
众包
新闻
博问
闪存
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
王新宇w
博客园
首页
新随笔
联系
订阅
管理
2018年10月8日
Java多线程——volatile关键字
摘要: volatile在多线程中是用来同步变量的。 线程为了提高效率,将某成员变量(如A)拷贝了一份(如B),线程中对A的访问其实访问的是B。只在某些动作时才进行A和B的同步。因此存在A和B不一致的情况。 volatile就是用来避免这种情况的。volatile告诉jvm, 它所修饰的变量不保留拷贝,直接
阅读全文
posted @ 2018-10-08 08:52 秃顶程序猿
阅读(162)
评论(0)
推荐(0)
2018年10月7日
Java多线程——Lock显式锁
摘要: Lock是一个接口,提供了无条件的、可轮询的、定时的、可中断的锁获取操作,所有的加锁和解锁操作方法都是显示的,因而称为显示锁。 下面针对Lock的几个实现类ReentrantLock、ReentrantReadWriteLock.ReadLock和ReentrantReadWriteLock.Wri
阅读全文
posted @ 2018-10-07 16:27 秃顶程序猿
阅读(168)
评论(0)
推荐(0)
Java多线程——死锁
摘要: 死锁是这样一种情形:多个线程同时被阻塞,它们中的一个或者全部都在等待某个资源被释放。由于线程被无限期地阻塞,因此程序不可能正常终止。 java 死锁产生的四个必要条件: 1、互斥使用,即当资源被一个线程使用(占有)时,别的线程不能使用 2、不可抢占,资源请求者不能强制从资源占有者手中夺取资源,资源只
阅读全文
posted @ 2018-10-07 16:23 秃顶程序猿
阅读(245)
评论(0)
推荐(0)
2018年10月6日
Java多线程——TreadPoolExecutor,线程池
摘要: 一.为什么使用线程池: 1.降低资源损耗。 主要指的是降低创建和销毁线程时产生的cpu资源消耗,线程池通过持续工作的线程执行不断分配的新 任务,来减少频繁的线程创建与销毁。 2.提高响应速度。 3.提高线程的可管理性。 线程是稀缺资源,频繁的创建销毁,以及没有控制的大量创建,都会影响系统的稳定性。使
阅读全文
posted @ 2018-10-06 20:50 秃顶程序猿
阅读(576)
评论(0)
推荐(0)
Java多线程——wait方法和notify方法的详解
摘要: wait():等待,如果线程执行了wait方法,那么该线程会进入等待的状态,等待状态下的线程必须要被其他线程调用notify()方法才能唤醒。 notify():唤醒,唤醒线程池等待线程其中的一个。 notifyAll():唤醒线程池所有等待线程。 wait与notify方法要注意的事项: 1. w
阅读全文
posted @ 2018-10-06 16:43 秃顶程序猿
阅读(4701)
评论(0)
推荐(0)
2018年7月27日
面向对象
摘要: 1.面向对象思想的概述 面向过程:当需要实现一个功能的时候,每一个具体的步骤都要亲力亲为,详细处理每一个细节.面向过程:当需要实现一个功能的时候,不关系具体的步骤,而是找一个已经具有该功能的人,来帮我做事. 区别:面向过程:强调步骤.面向对象:强调对象. 特点:面向对象思想是一种更符合我们思考习惯的
阅读全文
posted @ 2018-07-27 15:41 秃顶程序猿
阅读(138)
评论(0)
推荐(0)
数组
摘要: 1.求出数组中的最值: int[] array = { 5, 15, 30, 1000, 60, 20}; int max = array[0]; for(int i = 1; i < array.length; i++){ //如果当前元素,比max更大,则换 if(array[i] > max)
阅读全文
posted @ 2018-07-27 15:38 秃顶程序猿
阅读(146)
评论(0)
推荐(0)
循环结构
摘要: 1.循环概述 循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环语句,当反复执行这个循环体时,需要再合适的时候把循环判断条件修改为false,从而结束循环,否则循环将一直执行下去, 形成死循环. 2.循环条件的基本组成部分 1).初始化语句:再循环开始最初执行,而
阅读全文
posted @ 2018-07-27 15:35 秃顶程序猿
阅读(144)
评论(0)
推荐(0)
2018年7月18日
选择结构
摘要: .if选择结构 if选择结构是根据条件判断之后再做处理的一种语法结构. if(条件){ 代码块 //条件成立后要执行的代码,可以使一条语句,也可以是一组语句 } 2.if-else选择结构: 语法: if (条件){ //代码块1 }else{ 代码块2 } 3.多重if选择结构 语法: if(条件
阅读全文
posted @ 2018-07-18 18:24 秃顶程序猿
阅读(228)
评论(0)
推荐(0)
变量,数据类型和运算符
摘要: 1.变量 计算机使用内存来记忆大脑运算时要使用的数据. 如何存储一个数据? 答:"根据数据类型为它在内存中分配一块空间,然后数据就可以放进这块空间中." 分配的空间过小会导致数据无法储存. 根据内存地址可以找到这块内存空间的位置,也就找到了存储的数据. 内存地址非常不好记,因此,我们给这块内存空间起
阅读全文
posted @ 2018-07-18 18:03 秃顶程序猿
阅读(178)
评论(0)
推荐(0)
下一页
公告