Java中使用Thread创建多线程并启动

本文通过实例演示了如何使用Java创建并启动多个线程,展示了线程间的并发执行情况及其实现过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

       按照教程实现了一个单线程的创建,但是单线程的创建于启动并不是很有实用价值的。毕竟直接在main方法中放着相关的执行操作本身也就是一种单线程的实现。接下来在之前用过的代码基础上稍作修改,形成如下代码:

class ThreadDemoextends Thread

{

       ThreadDemo(){};

      

       ThreadDemo(String szName)

       {

              super(szName);

       }

      

       public void run()

       {

              int i = 0;

              for(i = 0;i < 10;i++)

              {

                     System.out.println("run" + (i + 1) + " times");

              }

       }

 

       public static void main(String[] args)

       {

              ThreadDemo demo1 = newThreadDemo();

              ThreadDemo demo2 = newThreadDemo();

              ThreadDemo demo3 = newThreadDemo();

             

              demo1.start();

              demo2.start();

              demo3.start();

       }

}

       代码编译运行结果如下;

E:\WorkSpace\02_技术实践\01_编程语言\05_Java\02_Java从入门到精通\thread_demo>javac ThreadDemo.java

 

E:\WorkSpace\02_技术实践\01_编程语言\05_Java\02_Java从入门到精通\thread_demo>java ThreadDemo

run 1 times

run 2 times

run 3 times

run 4 times

run 5 times

run 6 times

run 7 times

run 1 times

run 2 times

run 1 times

run 3 times

run 8 times

run 4 times

run 2 times

run 5 times

run 9 times

run 6 times

run 7 times

run 8 times

run 3 times

run 9 times

run 10 times

run 10 times

run 4 times

run 5 times

run 6 times

run 7 times

run 8 times

run 9 times

run 10 times

从上面的结果中实际上看到了一定的乱序,看起来三个任务的执行顺序不是按顺序来的。其实,这正是创建出来的三个线程出现了执行上的竞争而造成的结果。

       之前我写程序的时候确实是感觉傻了一点,虽说这么久以来也好歹完成了任务,但是我之前所实现的都是单线程的工作。一个任务从头到尾一路执行下来,好在现在的电脑的执行速度都还不坏,否则我这中间可得出现多少执行时间上的浪费啊!

       虽说现在是在学Java,后期的Python等支持多线程的语言中尽量也该把这个功能利用起来。尽可能的挖掘一下CPU的潜力还是一件很有意思的事情的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值