Java使用Thread创建多线程并启动操作示例
本文实例讲述了Java使用Thread创建多线程并启动操作。分享给大家供大家参考,具体如下:
按照教程实现了一个单线程的创建,但是单线程的创建于启动并不是很有实用价值的。毕竟直接在main方法中放着相关的执行操作本身也就是一种单线程的实现。接下来在之前用过的代码基础上稍作修改,形成如下代码:
classThreadDemoextendsThread
{
ThreadDemo(){};
ThreadDemo(StringszName)
{
super(szName);
}
publicvoidrun()
{
inti=0;
for(i=0;i<10;i++)
{
System.out.println("run"+(i+1)+"times");
}
}
publicstaticvoidmain(String[]args)
{
ThreadDemodemo1=newThreadDemo();
ThreadDemodemo2=newThreadDemo();
ThreadDemodemo3=newThreadDemo();
demo1.start();
demo2.start();
demo3.start();
}
}
代码编译运行结果如下;
E:\WorkSpace\02_技术实践\01_编程语言\05_Java\02_Java从入门到精通\thread_demo>javacThreadDemo.java
E:\WorkSpace\02_技术实践\01_编程语言\05_Java\02_Java从入门到精通\thread_demo>javaThreadDemo
run1times
run2times
run3times
run4times
run5times
run6times
run7times
run1times
run2times
run1times
run3times
run8times
run4times
run2times
run5times
run9times
run6times
run7times
run8times
run3times
run9times
run10times
run10times
run4times
run5times
run6times
run7times
run8times
run9times
run10times
从上面的结果中实际上看到了一定的乱序,看起来三个任务的执行顺序不是按顺序来的。其实,这正是创建出来的三个线程出现了执行上的竞争而造成的结果。
之前我写程序的时候确实是感觉傻了一点,虽说这么久以来也好歹完成了任务,但是我之前所实现的都是单线程的工作。一个任务从头到尾一路执行下来,好在现在的电脑的执行速度都还不坏,否则我这中间可得出现多少执行时间上的浪费啊!
虽说现在是在学Java,后期的Python等支持多线程的语言中尽量也该把这个功能利用起来。尽可能的挖掘一下CPU的潜力还是一件很有意思的事情的。
更多java相关内容感兴趣的读者可查看本站专题:《Java进程与线程操作技巧总结》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》
希望本文所述对大家java程序设计有所帮助。