守护线程:也可以理解为后台线程,之前创建的都是前台线程。 只要线程调用了setDaemon(true);就可以把线程标记为守护线程。 前台后台线程运行时都是一样的,获取CPU的执行权执行。 只有结束的时候有些不同。 前台线程要通过run方法结束,线程结束。 后台线程也可以通过run方法结束,线程结束 ...
分类:
编程语言 时间:
2017-08-11 21:11:28
阅读次数:
136
堵塞队列: 1)BlockingQueue该接口提供了: add()/remove() 假设当队列没有数据,从队列中取数据;或者队列中数据已满, 向队列中加入数据;则会抛出异常. put()/take() 假设当队列没有数据,从队列中取数据;或者队列中数据已满, 向队列中加入数据;则会形成堵塞. o ...
分类:
编程语言 时间:
2017-07-31 18:56:33
阅读次数:
269
一、常用概念 进程 进程就是一个程序在一个数据集上的一次动态执行过程。进程一般由程序、数据集、进程控制块三部分组成。 线程 线程的出现是为了降低上下文切换的消耗,提高系统的并发性,并突破一个进程只能干一样事的缺陷,使到进程内并发成为可能。 线程也叫轻量级进程,它是一个基本的CPU执行单元,也是程序执 ...
分类:
编程语言 时间:
2017-07-21 01:18:53
阅读次数:
177
概念 进程:进程就是一个程序在一个数据集上的一次动态执行过程 程序:代码 数据集:程序执行过程中需要的资源 进程控制块:完成状态保存的单元 线程:线程是寄托在进程之上,为了提高系统的并发性 线程是进程的实体 进程是一个资源管理单元、线程是最小的执行单元 线程和进程的关系 (1)一个线程只能属于一个进 ...
分类:
编程语言 时间:
2017-07-17 21:52:25
阅读次数:
187
Python函数式编程指南(四):生成器1.就是把一个函数变成一个生成器,通过yield函数,然后就可以通过for迭代,eg:def fab(max): n, a, b = 0, 0, 1 while n < max: yield b # print b a, b = b, a + b n = n ...
分类:
其他好文 时间:
2017-07-12 15:20:50
阅读次数:
216
1.线程与进程的描述: 1.1进程:每个进程都有独立的代码和数据空间(进程上下文),进程间的切换会有较大的开销,一个进程包含1~n个线程。(进程是资源分配的最小单位) 1.2线程:同一类线程共享代码和数据空间,每个线程有独立的运行栈和程序计数器(PC),线程切换开销小。(线程是cpu调度的最小单位) ...
分类:
编程语言 时间:
2017-07-04 19:57:29
阅读次数:
199
Java8中的新特性 一、Lambda表达式 Lambda表达式可以理解为一种可传递的匿名函数:它没有名称,但又参数列表、函数主体、返回类型,可能还有一个可以抛出的异常列表。 匿名:和匿名类类似的,它没有明确的名字 函数:Lambda函数不属于某个特定的类,但和方法一样都具有参数列表、函数主体、返回 ...
分类:
编程语言 时间:
2017-06-13 00:06:06
阅读次数:
224
package xianchen.houtai; /* * 后台线程,用这个方法: * setDaemon public final void setDaemon(boolean on) */ //要想设置为后台线程,可以把run()方法设置为 死循环 //定义一个类,实现runnable clas... ...
分类:
编程语言 时间:
2017-06-05 15:39:00
阅读次数:
88
多线程 Java多线程面试问题 1. 进程和线程之间有什么不同? 一个进程是一个独立(self contained)的运行环境,它可以被看作一个程序或者一个应用。而线程是在进程中执行的一个任务。Java运行环境是一个包含了不同的类和程序的单一进程。线程可以被称为轻量级进程。线程需要较少的资源来创建和 ...
分类:
编程语言 时间:
2017-05-13 11:16:24
阅读次数:
210
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常与多线程相关内容。 2. 书面作业 本次PTA作业题集异常、多线程 finally 题目4-2 1.1 截图你的提交结果(出现学号) 1.2 4-2中finally中捕获异常需要注意什么? 答:try执行后finally才会执行 ...
分类:
编程语言 时间:
2017-04-29 22:18:01
阅读次数:
272