<b>经验分享:对Java中的线程感触</b>[Java编程]
本文“<b>经验分享:对Java中的线程感触</b>[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
1.进程和线程的辨别
通俗一点说,进程就是程序的一次履行,而线程可以理解为进程中的履行的一段程序片段.
用一点文词说就是,每个进程都有独立的代码和数据空间(进程上下文);而线程可以当作是轻量级的进程.普通来说(不利用特别技术),同一进程所产生的线程同享同一块内存空间.
同一进程中的两段代码是不大概同时履行的,除非引入线程.
线程是属于进程的,当进程退出时该进程所产生的线程城市被强迫退出并排除.
线程占用的资源要少于进程所占用的资源.
进程和线程都可以有优先级.
在线程系统中进程也是一个线程.可以将进程理解为一个程序的第一个线程.
多进程——在操作系统中,能同时运行多个任务(程序).
多线程——在同一利用程序中,有多个次序流同时履行.
2.通过铁路售票程序来理解实现多线程的两种办法:通过java.lang.Thread类和通过Runnable接口
java中有两种实现多线程的方法.一是直接担当Thread类,二是实现Runnable接口.那么这两种实现多线程的方法在利用上有什么辨别呢?
为了答复这个问题,我们可以通过编写一段代码来举行解析.我们用代码来模拟铁路售票系统,实现通过四个售票点发售某日某次列车的100张车票,一个售票点用一个线程表示.
我们首先这样编写这个程序:
public class ThreadDome1{ class ThreadTest extends Thread{ |
上面的代码中,我们用ThreadTest类模拟售票处的售票历程,run办法中的每一次循环都将总票数减1,模拟卖出一张车票,同时该车票号打印出来,直接剩余的票数到零为止.在ThreadDemo1类的main办法中,我们成立了一个线程对象,并反复启动四次,但愿通过这种方法产生四个线程.从运行的后果来看我们发现其实只有一个线程在运行,这个后果奉告我们:一个线程对象只能启动一个线程,无论你调用多少遍start()办法,后果只有一个线程.
我们接着改正ThreadDemo1,在main办法中成立四个Thread对象:
public class ThreadDemo1{ class ThreadTest extends Thread{ |
以上是“<b>经验分享:对Java中的线程感触</b>[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |