`
pleasetojava
  • 浏览: 704694 次
  • 性别: Icon_minigender_2
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

线程的部分代码

阅读更多

把线程内容的部分代码摘录如下


packageThread;
//本例题展示了单线程的情况,输出结果只输出son.run();的执行情况
//sonmainson
//sonmainson
//sonmainson
//sonmainson
//

publicclassTestA...{
publicstaticvoidmain(String[]args)
...{
MyThreadson
=newMyThread();
son.run();
while(true)
...{
System.out.println(
"main"+Thread.currentThread().getName()+"main");
}

}

}

classMyThread
...{

voidrun()
...{
while(true)
...{
System.out.println(
"son"+Thread.currentThread().getName()+"son");
}

}


}


packageThread;
//本例实现了多线程,通过继承Thread实现
//mainmainmain
//mainmainmain
//mainmainmain
//mainmainmain
//mainmainmain
//mainmainmain
//mainmainmain
//sonThread-0son
//sonThread-0son
//sonThread-0son
//看到主线程和子线程交替执行

publicclassTestB...{
publicstaticvoidmain(String[]args)
...{
//MyThread2son=newMyThread2();
//son.start();
newMyThread2().start();//此处应用了匿名对象,和上述注释一样
while(true)
...{
System.out.println(
"main"+Thread.currentThread().getName()+"main");
}

}

}

classMyThread2extendsThread
...{

publicvoidrun()
...{
while(true)
...{
System.out.println(
"son"+Thread.currentThread().getName()+"son");
}

}


}



packageThread;


publicclassTestC...{
publicstaticvoidmain(String[]args)
...{
//MyThread2son=newMyThread2();
//son.start();
newMyThread3().start();//此处应用了匿名对象,和上述注释一样
while(true)
...{
System.out.println(
"main"+Thread.currentThread().getName()+"main");
}

}

}

classMyThread3extendsThread
...{

publicvoidrun()
...{
while(true)
...{
System.out.println(
"son"+Thread.currentThread().getName()+"son");
}

}


}




packageThread;
//本例展示了Join的应用
//tt.join()后,整个程序又变成了一个线程,因为把它加入到了主线程,所以当完成100以后,持续输出son
//tt.join(1000)后,程序持续运行son10秒,然后交替输出main和son
publicclassTestJoin...{
publicstaticvoidmain(String[]args)
...{
Threadtt
=newMyThreadJoin();
tt.start();
intcount=0;
while(true)
...{if(count++==1000)
//try{tt.join();}catch(Exceptione){}
try...{tt.join(10000);}catch(Exceptione)...{}//此处显示了加入10秒后,将交替输出main和son
System.out.println("main"+Thread.currentThread().getName()+"main");
}

}

}

classMyThreadJoinextendsThread
...{
publicvoidrun()
...{
while(true)
...{
System.out.println(
"son");
}

}

}





packageThread;
//该例展示了后台线程的运行情况,当主程序结束后,后台线程会及时终止
//如果不设置daemon,则线程会一直运行,虽然主程序main()已经结束
publicclassTestZ...{
publicstaticvoidmain(String[]args)
...{
Threaddog
=newth();
dog.setDaemon(
true);//dog设置为了后台线程
dog.start();
}

}


classthextendsThread
...{
publicvoidrun()
...{
while(true)
...{
System.out.println(
"ald");
}


}

}




packageThread;

publicclassErrorDemo...{

publicstaticvoidmain(String[]args)
...{
RRrrr
=newRRr();
newThread(rr).start();
newThread(rr).start();
newThread(rr).start();
newThread(rr).start();
}


}







classRRrimplementsRunnable
...{
intcount=100;
publicvoidrun()
...{

while(true)
...{

if(count>0)
...{
try...{Thread.sleep(10);}catch(Exceptione)...{}
System.out.println(Thread.currentThread().getName()
+"sisaling"+count--);
}

}

}

}



packageThread;

publicclassRunnableDemo...{
publicstaticvoidmain(String[]args)
...{
newThread(newR()).start();//注意此处的应用方式Thread的构造函数以R为参数,故调用R.run()
newThread(newR()).start();
newThread(newR()).start();
newThread(newR()).start();
while(true)
...{
System.out.println(
"main");
}

}

}

classRimplementsRunnable
...{
inttickets=100;
publicvoidrun()
...{
while(true)
...{
System.out.println(Thread.currentThread().getName()
+(tickets--));
http://images.csdn.net/syntax
分享到:
评论

相关推荐

    易语言多线程开发框架.zip(更新1.1.3)

    部分代码是取自前辈们的,集合在一起只是方便大家使用! 请勿使用本模块编写有损他人利益的软件,造成的后果全部自负 .提示模块加固 需要安装易语言助手 https://e.125.la/ 推荐安装 .提示e2ee 需要安装e2ee支持库 ...

    多线程程序设计源代码

    本资源包括两部分 第一部分是侯捷翻译的win32多线程程序设计-源代码第二部分是:Windows多线程编程技术与实例-源代码

    网络蜘蛛之多线程代码

    vs下运行的多线程网络蜘蛛的一部分代码,可以参考学习多线程

    java多线程时钟程序源代码

    java语言,利用多线程编写的时钟程序源代码。仅供参考。

    线程工具使用代码

    java线程使用代码,简单编写了部分代码,import需要自己导入

    Android中AIDL的使用步骤、传递对象以及各部分代码的执行线程

    Android中AIDL的使用步骤、传递对象以及各部分代码的执行线程

    symiban 多线程 实例代码

    symbian多线程得例子,对于熟悉线程部分是一个很好得参考

    c#实现多线程代码例子

    它会将文件分成与线程数相同的部分,然后每个线程下载自己的那一部分,这样下载效率就有可能提高。相信大家都有加多线程数,提升下载效率的经历。但细心的用户会发现,在带宽一定的情况下,并不是线程越多,速度越快...

    基于socket和多线程的聊天程序设计与实现的群聊部分代码

    LINUX下基于socket和多线程的聊天程序设计与实现的群聊客户端关键代码

    (简洁)工作者线程,用户界面线程,主线程学习代码

    mfc vs2010版本,自己写的学习工作者线程,用户界面线程的代码.带有部分注释,希望对初学者有帮助(>_<我也是初学)

    以前项目部分线程代码

    NULL 博文链接:https://helove.iteye.com/blog/982549

    Visual Basic.NET线程参考手册

    线程技术是指开发框架将应用程序的一部分脱离为“线程”的能力,这使得线程与 程序其余部分的执行步骤不再一致了。在绝大多数编程语言中,都会有一个相当于sub Maln()的方法,该方法中的每一行按顺序执行,下一行...

    XV6进程线程源代码-部分阅读1

    //parameter.h 设置一些XV6操作系统中的参数#define NPROC 64 // maximum number of processes 最大的

    C++多线程聊天程序代码

    C++多线程聊天程序代码,有部分注释,可以配合其他文档,学些下,比较适合初学者。

    Linux 相关的线程代码

    LINUX c现成代码,让您轻松学会嵌入式软件开发,线程是Linux系统中重要的组成部分。

    多线程面试相关知识点

    多线程程序包含两条或两条以上并发运行的部分,把程序中每个这样的部分都叫作一个线程(thread)。每个线程都有独立的执行路径,因此多线程是多任务处理的一种特殊形式。 多任务处理被所有的现代操作系统所支持...

    [C#]多线程下载

    1.检测系统托盘图标内的进程名是否符合要求 (xp时可以,win7部分机器可以,该功能无意义) 2.抓取页面,进行正则匹配下载的文件地址(可以改成自己想要的任何情况) 3.开多线程下载(建立多个文件) 4.合并文件 5....

    C#线程参考手册

    C#线程参考手册 pdf 照书上打的代码。部分可用 C#线程参考手册 pdf 照书上打的代码。部分可用 C#线程参考手册 pdf 照书上打的代码。部分可用

Global site tag (gtag.js) - Google Analytics