Java -- 事件处理机制--线程相关知识
目录
1. Java事件处理机制
java事件处理是采取“委派事件模型”。当事件发生时,产生事件的对象,会把此“信息”传递给事件的监听者处理,这里所说的信息就是java.awt.event事件类库里某个类所创建的对象,把它称为“事件的对象”。
事件源:就是产生事件的对象,比如按钮,窗口等
事件:事件就是承载事件源状态改变的对象,比如当键盘事件,鼠标事件,窗口事件等,会生成一个事件对象,该对象保存着当前事件很多信息,比如KeyEvent对象有含有被按下键的Code值。
2. 线程相关概念
2.1进程
1. 进程是指运行中的程序,比如我们使用QQ,就启动一个进程,操作系统就会分该进程分配内存空间。当使用迅雷后,又启动一个了一个进程,操作系统将迅雷分配新的内存空间。
2. 进程是程序的一次执行过程,或是正在运行的一个程序。是动态过程:有它自身的产生,存在和消亡
2.2线程
1. 线程由进程创建的,是进程的一个实体
2. 一个进程可以拥有多个线程
2.3 其他概念
1. 单线程:同一个时刻,只允许执行一个线程
2. 多线程:同一个时刻,可以执行多个线程
3. 并发:同一时刻,多个任务交替执行,造成一种“貌似同时”的错觉,简单的说,单核cpu实现的多任务就是并发
4. 并行:同一个时刻,多个任务同时执行。多核cpu可以实现并行
2.4 创建线程的俩种方式
1. 继承Tgread类,重写run方法
2. 实现Runnable接口,重写run方法
3. 继承Thread vs Runnabl的区别
1. 从java的设计来看,通过继承Thread或者实现Runnable接口来创建线程本质没有区别,从jdk帮助文档我们可以看到Thread类本身就实现了Runnable接口
2. 实现Runnable接口方式更加适合多个线程共享一个资源的情况,并且避免了单继承的限制,建议使用Runnable
4. 线程终止
1. 当线程完成任务后,会自动退出
2. 还可以通过使用变量来控制run方法退出的方式停止线程,即通知方式
5. 线程常用方法
1. setName //设置线程名称,使之与参数name相同
2. getName //返回该线程的名称
3. start // 使该线程开始执行;java虚拟机底层调用该线程的start0方法
4. run //调用线程对象run方法
5. setPriority //更改线程的优先级
6. getPriority //获取线程的优先级
7. sleep //在指定的毫秒数内让当前正在执行的线程休眠(暂停执行)
8. interrupt //中断线程
更多推荐
所有评论(0)