东理线程名称的设置及取得SHANDONGUNIVERSITY OFTECHNOLOGY取得当前运行的线程public static Thread currentThread()取得线程名称getName()(香看ThreadAPD)设置线程名称setName(String name(查看ThreadAPI)专业专注创新
专业 专注 创新 线程名称的设置及取得 取得当前运行的线程: public static Thread currentThread() 取得线程名称 (查看Thread API) getName() 设置线程名称 (查看Thread API) setName(String name)
东理线程优先级SHANDONGUNIVERSITYOFTECHNOLOGY在Thread类中定义的静态常量:NORMPRIORITY:值为5(缺省为:NORMPRIORITY)MAXPRIORITY:值为10MINPRIORITY:值为1有关优先级的方法有两个,★finalvoidsetPriorityintnewp):修改线程的当前优先级★finalintgetPriorityO:返回线程的优先级专业专注创新
专业 专注 创新 线程优先级 在 Thread 类中定义的静态常量: NORM_PRIORITY : 值为 5 (缺省为:NORM_PRIORITY) MAX_PRIORITY : 值为 10 MIN_PRIORITY : 值为 1 有关优先级的方法有两个: final void setPriority(int newp) : 修改线程的当前优先级 final int getPriority() : 返回线程的优先级
东理功方法使用举例SHANDONGUNIVERSITYOETECHNOLOGDPrintThreadDDIntProblems@JavadDSleepThreadD..DJoinThreadDe..DJoinThreadDe.?/★★测试线程名字<terminated>GetThreadmain-->在运行*/main-->在运行paokage cn.sdut;main-->在运行publicclassGetThreadNameTestfmain-->在运行public static void main(string[)args)t1-->在运行ThreadName tl-new ThreadName()t1-->在运行tl.setName(ntl");t1-->在运行tl.start();t1-->在运行for(inti-o;i<lo:i++)t1-->在运行tl.fun();t1-->在运行t1-->在运行t1-->在运行t1-->在运行t1-->在运行main-->在运行ThreadName extendsThread(classmain-->在运行epublicvoidfun()main-->在运行Thread t=Thread.currentThread()//得到当前线程main-->在运行system.out.println(t.getName()+n-->在运行"):main-->在运行}main-->在运行0@overridepublic void run()for(inti=0.i<10;i++)3fun();11
专业 专注 创新 方法使用举例
东理宝多线程程序举例1一一各窗口单独卖票SHANDONGUNIVERSITYOFTECHNOLOGY多窗口卖票,需求如下:假设一个影院有三个售票口,分别用于向儿童、成人和老人售票。★影院为每个窗口放有10张电影票,分别是儿童票、成人票和老人票。三个窗口需要同时卖票,而现在只有一个售票员,这个售票员就相当于一个CPU,三个窗口就相当于三个线程专业专注创新
专业 专注 创新 多线程程序举例1——各窗口单独卖票 多窗口卖票,需求如下: 假设一个影院有三个售票口,分别用于向儿童、成人和老 人售票。 影院为每个窗口放有10张电影票,分别是儿童票、成人票 和老人票。 三个窗口需要同时卖票, 而现在只有一个售票员,这个售 票员就相当于一个CPU,三个窗口就相当于三个线程
东理客通过扩展Thread类来创建多线程SHANDONG UNIVERSITYOFTECHNOLOGYpackage cn.sdut;10is saled by window 1public class MultiThreadDemol 9is saled by window 18is saledbywindow 1Cpublic static void main(string[ args)(7is saledwindow 1byMultiThread ml = new MultiThread("Window l");6issaled bywindow 1MultiThread m2= new MultiThread("Window 2"),5is saledwindow 1by4MultiThread m3 = new MultiThread("window 3");issaledwindow 1O5is saledwindow1byml.start();2is saled by window 1m2.start();1issaled by window 1m3.start();10is saled by window 39is1saledbywindow38issaledWindow 3by7issaled byWindow 36issaledbywindow3class MultiThread extends Thread5issaledwindow 3by4issaledwindow 3byprivateintticket=10://每一个线程都拥有1o张票3issaledbyWindow32issaled bywindow38MultiThread(string name)(1issaled byWindow310issaled by Window 2super(name);9issaledbywindow 218issaled bywindow 2public void run() 7issaledwindow 2bywhile(ticket>o)(6is saledbyWindow 2is5saledwindow 2bySystem.out.println(ticket--+ " is saled by4issaledWindow 2by+currentThread().getName());3issaledWindow 2by12issaledbyWindow 21issaledbyWindow 2
专业 专注 创新 通过扩展Thread类来创建多线程