Java Tread多线程(0)一个简单的多线程实例
2015-02-27 20:12
316 查看
作者 : 卿笃军
原文地址:/article/2629545.html
本文演示,一个简单的多线程实例,并简单分析一下线程。
编程多线程时,一般步骤:
1)继承Thread函数。
2)覆盖run函数。
注意:1)main函数为主线程,main里面存放的是主线程的运行代码;
Demo1为子线程,里面的run函数里面存放的是子线程须要运行的代码;当中,本文中主线程和子线程运行的优先级是一样的。
2)启动线程必须用start()启动,而不能直接调用run方法。
差别:①start() :开启线程,并执行run方法;(start会调用底层开启线程,Java本身不会开启一个线程,start肯定是调用了Windows底层的什么开启了线程,这里执行环境是Windows)
②run():相当于直接函数调用(主线程运行的run内容),子线程创建了,但没有开启并运行;(run的功能,不过为了封装线程运行的代码)
③局部变量,在每一个线程其中都有独立的一份。
Example: 一个简单的Demo例如以下:
一些简单的说明:
1)获得线程的名字:[注:currentThread()获取当前线程对象 ] ,下面两种写法是一样的。
①编写构造函数
參考文献:Java视频 毕向东 主讲
原文地址:/article/2629545.html
原文地址:/article/2629545.html
本文演示,一个简单的多线程实例,并简单分析一下线程。
编程多线程时,一般步骤:
1)继承Thread函数。
2)覆盖run函数。
注意:1)main函数为主线程,main里面存放的是主线程的运行代码;
Demo1为子线程,里面的run函数里面存放的是子线程须要运行的代码;当中,本文中主线程和子线程运行的优先级是一样的。
2)启动线程必须用start()启动,而不能直接调用run方法。
差别:①start() :开启线程,并执行run方法;(start会调用底层开启线程,Java本身不会开启一个线程,start肯定是调用了Windows底层的什么开启了线程,这里执行环境是Windows)
Demo1 demo1 = new Demo1(); demo1.start();
②run():相当于直接函数调用(主线程运行的run内容),子线程创建了,但没有开启并运行;(run的功能,不过为了封装线程运行的代码)
Demo1 demo1 = new Demo1(); demo1.run();
③局部变量,在每一个线程其中都有独立的一份。
Example: 一个简单的Demo例如以下:
package thread.demo1.qdj;执行结果显示:
class Demo1 extends Thread
{
public void run()
{
for (int x = 0; x < 50; ++x)
System.out.println("启动了线程Demo1");
}
}
public class CThreadDemo1 {
public static void main(String[] args) {
Demo1 demo1 = new Demo1(); demo1.start();
for (int x = 0; x < 50; ++x)
System.out.println("正在执行主线程");
}
}
一些简单的说明:
1)获得线程的名字:[注:currentThread()获取当前线程对象 ] ,下面两种写法是一样的。
class Demo1 extends Thread { public void run() { //System.out.println(this.getName()); System.out.println(Thread.currentThread().getName()); } }2)设置线程的名字
①编写构造函数
class Demo1 extends Thread { public Demo1(String name) { //调用父类 super(name); } public void run() { //System.out.println(this.getName()); System.out.println(Thread.currentThread().getName()); } }②创建线程时传參
Demo1 demo1 = new Demo1("name1");
參考文献:Java视频 毕向东 主讲
原文地址:/article/2629545.html
相关文章推荐
- Win32 API 多线程编程——一个简单实例(含消息参数传递)
- C#一个简单多线程的实例
- 一个关于多线程的简单实例(抄书)
- Java Tread多线程(0)一个简单的多线程实例
- 工作中为什么要用多线程,它的好处,以及一个简单多线程实例。
- 一个多线程web服务器实例(C,Linux,详细的web服务器原理)
- 一个简单的linux下网络程序实例-网络编程入门
- 一个简单的读写注册表实例
- 如何实现一个简单的remoteing实例
- Struts学习总结(一个简单的struts实例)
- 一个响应鼠标移动的简单实例!
- 一个简单的支持多聊天室的多线程聊天程序
- 【推荐实例】一个典型的多线程的程序
- 最简单的一个堆栈溢出攻击实例 (2) [by Progsoft]
- 一个简单的hibernate实例(之一)
- 一个简单的hibernate实例(之二)
- 发布一个超级mini的ajax源代码(含简单实例)
- 2. 一个简单的Servlet--产生存文本下面是一个产生存文本的简单servlet的实例
- J2ME应用实例——一个简单的计算器实现(附源代码)
- 一个简单的单例实例