java实现多线程的两种方法(收藏)
来源:互联网 发布:知乎 用的什么编辑器 编辑:程序博客网 时间:2024/06/05 19:03
java
有点不同,
实现多线程有两种方式:
继承类
Thread
,
和
实现接口
Runnable
。
thread
类有一个
run
函数,它是线程的入口,当启动一个新线程是,就从这个
函数开始执行;
View Code
注意线程是调用
start()
来开始的。
Runnable
有一点点不同,实现这个类的时候和
Thread
一样,但是创建线程的时
候还是放入一个
Thread
中创建:
View Code
Thread
和
Runnable
基本用法都是差不多的,但是从上面的例子可以看出,
Runnable
比较方便进程间数据的共享(公用了一个
cnt
计量单位),所以一样
都使用
Runnable
。
线程常用的几个函数:
join():
强制等待线程执行完毕。
例如如果在主线程里面加一句
ta.join(),
那么主线程会一直等待
ta
执行返回才接着执行后面的代码。
但是在
join
之前已
经创建的其他线程,则不会受影响,继续执行。
interrupt():
挺有意思的一个函数,如果线程在执行
sleep
()函数
,则打断
它(以让
sleep
()函数抛出一个异常的方式中断),执行后面的语句。
setDaemon(true):
设置为守护进程。
守护进程的优先级是最低的,
如果一个程序
只剩下守护进程,那么它就中断所有守护进程而退出。
最常见的情况是,如果
创建的全部是守护进程,那么当主函数
main
执行完毕后,就立刻终止所有线程
而退出。
synchronized
同步符号用法:
保证同一时刻,某段代码只有一个线程在执行。
wait()
和
notify(),notifyAll():
让线程等待
/
唤醒。这两个函数比较奇怪,目
前我不是很熟练,
要配合
synchronized
符号使用,
请看下面这个生产者
-
消费者
例子(网上直接贴来的,写的挺好的)
:
- java实现多线程的两种方法(收藏)
- java实现多线程的两种方法
- java实现多线程的两种方法
- JAVA多线程的两种实现方法
- java实现多线程的两种方法
- java实现多线程的两种方法
- java多线程学习一:实现多线程的两种方法
- java实现多线程的两种方法的比较
- java中实现多线程的两种方法的区别
- JAVA实现多线程的两种方法,及如何使用
- Java 多线程的两种简单实现方法
- java下实现多线程的两种方法
- java实现多线程两种方法的比较
- java多线程㈠—实现线程的两种方法
- java实现多线程编程的两种方法。
- 【Java并发编程】实现多线程的两种方法
- java多线程实现的常用两种方法
- 多线程的两种实现方法
- zmq_socket()
- Dw中css应用源格式
- JAR文件揭密
- expdp/impdp
- MySQL中快速复制数据表方法汇总
- java实现多线程的两种方法(收藏)
- 赖春新-广东工业大学-交互设计师
- Unix NetWork Programming——环境搭建(解决unp.h等源码编译问题)
- Android自适应不同分辨率或不同屏幕大小
- NET多线程编程(14)——用C#实现蜘蛛/爬虫程序的多线程控制
- 深入了解scanf()/getchar()和gets()/cin等函数
- ASP.NET MVC 入门4、Controller与Action
- [STAThread]的含义
- SQL基础-->层次化查询(START BY ... CONNECT BY PRIOR)