2017年5月16日
摘要: 死锁问题: 例如有两个线程, 线程1与线程2. 线程1在执行的过程中, 要锁定对象1, 2才能完成整个操作, 首先锁定对象1, 再锁定对象2. 线程2在执行的过程中, 要锁定对象2, 1才能完成整个操作, 首先锁定对象2, 再锁定对象1. 某时刻, 线程1已经拥有对象1的锁, 要是再拥有对象2的锁就 阅读全文
posted @ 2017-05-16 19:41 牧羊人的世界 阅读(177) 评论(0) 推荐(0) 编辑
  2017年5月9日
摘要: Java 中的线程同步问题: 1. 线程同步: 对于访问同一份资源的多个线程之间, 来进行协调的这个东西. 2. 同步方法: 当某个对象调用了同步方法时, 该对象上的其它同步方法必须等待该同步方法执行完毕后, 才能被执行. 3. 同步块: 通常将共享资源的操作放置在 synchronized 定义的 阅读全文
posted @ 2017-05-09 20:24 牧羊人的世界 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 问题:java 中如何让一个正在运行的线程终止掉? Demo_1: Demo_2: Demo_3: 运行结果: main Thread is running : 0main Thread is running : 1main Thread is running : 2subThread: 1subT 阅读全文
posted @ 2017-05-09 20:08 牧羊人的世界 阅读(1323) 评论(0) 推荐(0) 编辑
摘要: Java 中线程优先级简介: 1. Java 提供一个线程调度器来监控程序中启动后进入就绪状态的所有线程。 按照线程的优先级决定应该调度哪个线程来执行. 2. 线程的优先级用数字表示, 范围从 1 到 10, 一个线程的缺省优先级是 5. Thread.MIN_PRIORITY = 1; Threa 阅读全文
posted @ 2017-05-09 18:48 牧羊人的世界 阅读(591) 评论(0) 推荐(0) 编辑
摘要: Java 中的线程状态转换: 【注】:不是 start 之后就立刻开始执行, 只是就绪了(CPU 可能正在运行其他的线程). 【注】:只有被 CPU 调度之后,线程才开始执行, 当 CPU 分配给你的时间片到了, 又回到就绪状态, 继续排队等候. 线程控制的基本方法: isAlive(): 判断线程 阅读全文
posted @ 2017-05-09 09:39 牧羊人的世界 阅读(1685) 评论(0) 推荐(0) 编辑
  2017年5月7日
摘要: Java 中的多线程简介: 1. Java 中的线程是通过 java.lang.Thread 类来实现的, 每一个 Thread 对象, 代表了一个新的主线程的线程. 2. Java 虚拟机启动时会有一个由主方法(public static void main(){})所定义的线程. 3. 可以通过 阅读全文
posted @ 2017-05-07 23:06 牧羊人的世界 阅读(157) 评论(0) 推荐(0) 编辑
  2017年5月6日
摘要: 多线程简介 1. 并发与并行的区别: 二者之间的区别在于,并发指的是一个处理器同时处理多个任务,并行指的是多个处理器或者是多核的处理器同时处理多个不同的任务. 2. 并发是逻辑上的同时发生,而并行是物理上的同时发生. 3. 例如: 并发:如同一个人(CPU)喂2个孩子(程序),轮流着每个孩子喂一口, 阅读全文
posted @ 2017-05-06 21:56 牧羊人的世界 阅读(145) 评论(0) 推荐(0) 编辑
  2017年5月4日
摘要: 1. 如何输出字符串的所有组合? 问题描述:假如字符串中所有字符都不重复,如何输出字符串的所有组合。例如:abca,结果应是a,b,c,ab,ac,bc,abc. 最容易想到的就是递归了,但效率会变得很差.因为栈被调用了2^n次方,为了提高效率,可以构造一个长度为n的01字符串,表示输出结果中是否包 阅读全文
posted @ 2017-05-04 21:44 牧羊人的世界 阅读(167) 评论(0) 推荐(0) 编辑
  2017年5月3日
摘要: Java 中的 object 流:直接将 Object 对象写入或读出 1. serializable 接口:序列化,可以被序列化的,若确实需要将某个类的对象写在硬盘上或网络上,想把他们序列化成一个字节流,就必须实现这个这个接口(标记性接口, 用来标记一下,这个类的对象可以被序列化,那么这个类到底是 阅读全文
posted @ 2017-05-03 16:14 牧羊人的世界 阅读(536) 评论(0) 推荐(0) 编辑
摘要: Java 中的 print 流: print 流用于做输出将会非常的方便,并且具有以下特点: 1. printWriter、printStream 都属于输出流,分别针对字符,字节. 2. printWriter、printStream 提供了重载的 print 与 println 方法. 3. p 阅读全文
posted @ 2017-05-03 12:22 牧羊人的世界 阅读(468) 评论(0) 推荐(0) 编辑