没有合适的资源?快使用搜索试试~ 我知道了~
如何使用Java编写多线程程序
5星 · 超过95%的资源 需积分: 9 22 下载量 102 浏览量
2009-01-01
23:34:31
上传
评论
收藏 97KB PDF 举报
温馨提示
试读
6页
线程的观念在java是语言中是重要的,根深蒂固的,因为在java语言中的线程系统是java语言自建的, java中有专门的支持多线程的API库,所以你可以以最快的速度写一个支持线程的程序。在使用java创建线程的时候,你可以生成一个Thread类或者他的子类对象,并给这个对象发送start()消息(程序可以向任何一个派生自 Runnable 接口的类对象发送 start() 消息的),这样一来程序会一直执行,直到run返回为止,此时该线程就死掉了。
资源推荐
资源详情
资源评论
如何使用 Java 编写多线程程序
线程的观念在 java 是语言中是重要的,根深蒂固的,因为在 java 语言中的线程系统是 java
语言自建的, java 中有专门的支持多线程的 API 库,所以你可以以最快的速度写一个支持
线程的程序。在使用 java 创建线程的时候,你可以生成一个 Thread 类或者他的子类对象,
并给这个对象发送 start()消息(程序可以向任何一个派生自 Runnable 接口的类对象发送
start() 消息的),这样一来程序会一直执行,直到 run 返回为止,此时该线程就死掉了。
一、简介
1、什么是线程
要说线程,就必须先说说进程,进程就是程序的运行时的一个实例。线程呢可以看作单独地占有
CPU 时间来执行相应的代码的。对早期的计算机(如 DOS)而言,线程既是进程,进程既是进程,
因为她是单线程的。当然一个程序可以是多线程的,多线程的各个线程看上去像是并行地独自完成各
自的工作,就像一台一台计算机上运行着多个处理机一样。在多处理机计算机上实现多线程时,它们
确实可以并行工作,而且采用适当的分时策略可以大大提高程序运行的效率。但是二者还是有较大的
不同的,线程是共享地址空间的,也就是说多线程可以同时读取相同的地址空间,并且利用这个空间
进行交换数据。
2、为什么要使用线程
为什么要使用多线程呢?学过《计算机体系结构》的人都知道。将顺序执行程序和采用多线程并
行执行程序相比,效率是可以大大地提高的。比如,有五个线程 thread1, thread2, thread3, thread4,
thread5,所耗的 CPU 时间分别为 4,5,1,2,7。(假 设 CPU 轮换周期为 4 个 CPU 时间,而且线程
之间是彼此独立的)顺序执行需要花费 19 个 CPU 时间,而并行需要的时间肯定少于 19 个 CPU 时间,
至于具体多少时间要看那些线程是可以同时执行的。这是在非常小规模的情况下,要是面对大规模的
进程之间的交互的话,效率可以表现得更高。
3、java 中是如何实现多线程的
与其他语言不一样的是,线程的观念在 java 是语言中是重要的,根深蒂固的,因为在 java 语言
中的线程系统是 java 语言自建的, java 中有专门的支持多线程的 API 库,所以你可以以最快的速度
写一个支持线程的程序。在使用 java 创建线程的时候,你可以生成一个 Thread 类或者他的子类对象,
并给这个对象发送 start()消息(程序可以向任何一个派生自 Runnable 接口的类对象发送 start() 消息
的),这样一来程序会一直执行,直到 run 返回为止,此时该线程就死掉了。
在 java 语言中,线程有如下特点:
§ 在一个程序中而言,主线程的执行位置就是 main。而其他线程执行的位置,程序员是可以自
定义的。值得注意的是对 Applet 也是一样。
§ 每个线程执行其代码的方式都是一次顺序执行的。
§ 一个线程执行其代码是与其他线程独立开来的。如果诸线程之间又相互协作的话,就必须采用一定
的交互机制。
§ 前面已经说过,线程是共享地址空间的,如果控制不当,这里很有可能出现死锁。
资源评论
- leonjump2013-11-15不错的帮助文档,谢谢分享。
数据之巅
- 粉丝: 167
- 资源: 211
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功