- 博客(8)
- 收藏
- 关注
原创 锁
多线程访问临界资源时的数据安全问题临界资源 :多个线程同时访问的资源。产生原因:有多个线程在同时访问一个资源,如果一个线程在取值的过程中,时间片又被其他线程抢走了,临界资源问题就产生了演示:卖票案例同步代码块同步:Synchronized:有等待异步:Asynchronized:没有等待,各执行各的语法:synchronized(锁) {//需要访问临界资源的代码段}说明:...
2019-08-17 17:58:44
97
原创 线程的方法
设置线程优先级 (setPriority)可以通过设置优先级来改变线程抢到时间片的概率,优先级高的线程获得较多的执行机会。默认情况下,每个线程的优先级都与创建它的父线程具有相同的优先级,例如:main线程具有普通优先级,则由main线程创建的子线程也有相同的普通优先级注意:优先级范围1~10,默认为5,对应的数值越大,说明优先级越高,这个方法的设置一定要在start之前线程的优先级低...
2019-08-17 17:58:28
75
原创 读写锁、线程池、定时器
扩展知识1:读写锁ReadWriteLock接口:可以实现多个读线程同时读取数据,写线程需要互斥执行。读|写 、写|写 需要互斥读|读 不需要互斥import java.util.concurrent.locks.ReadWriteLock;import java.util.concurrent.locks.ReentrantReadWriteLock;public class ...
2019-08-17 17:58:19
103
原创 线程和进程
第一节 进程和线程1.1 进程(Process)1 正在运行的程序,是一个程序的运行状态和资源占用(内存,CPU)的描述,通过进程ID区分。2 进程是程序的一个动态过程,它指的是从代码加载到执行完毕的一个完成过程。3 目前操作系统支持多进程多任务。进程的特点: a.独立性:不同的进程之间是独立的,相互之间资源不共享(举例:两个正在上课的教室有各自的财产,相互之间不共享) b.动态性...
2019-08-17 17:58:08
103
原创 Socket和ServerSocket
服务器端的编程步骤:1 创建服务器套接字,并指定端口号2 接受客户端连接,并返回客户端套接字3 获取输入输出流4 处理5 关闭Tcp客户端编码步骤:1 创建客户端套接字,并指定服务器的地址和端口号2 获取输入|输出流3 处理4 关闭客户端发送消息,服务端接收消息服务端://1.创建服务器套接字,并且指定端口ServerSocket listenter = new Ser...
2019-08-17 17:58:00
141
原创 文件类、字节流和字符流
第一节 File类java.io包中 (IO Input Output)在java程序中,对磁盘文件进行描述的类。文件和目录路径名的抽象表示形式。File类的方法:创建文件 creatNewFile()、mkdir()、mkdirs()判断:isFile()、canRead()、canWrite()、canExecute()获取:getName()、getAbsolutePath(...
2019-08-17 17:57:51
120
原创 转换流、缓冲流等
第一节 转换流作用:a.实现字节流到字符流的转换b.解决中文乱码的问题中文编码gb2312 (采用两个字节保存字符汉字,英文数字一个字节)GBK (采用两个字节保存字符汉字,英文数字一个字节)GB18030 (英文数字都是一个字节,中文是两个或四个字节)Unicode字符集(包含每个国家的所有字符)国际通用unicode编码 使用两个字节—65536个字符,浪费空间为了节省...
2019-08-17 17:57:30
83
原创 红黑树
红黑树是一种含有红黑结点并能自平衡的二叉查找树。它必须满足下面性质:性质1:每个节点要么是黑色,要么是红色。性质2:根节点是黑色。性质3:每个叶子节点(NIL)是黑色。性质4:每个红色结点的两个子结点一定都是黑色。性质5:任意一结点到每个叶子结点的路径都包含数量相同的黑结点。注意:(01) 特性(3)中的叶子节点,是只为空(NIL或null)的节点。(02) 特性(5),确保没有一...
2019-08-17 17:56:34
85
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人