`
dianziermu
  • 浏览: 137484 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

线程的使用方法

    博客分类:
  • J2SE
阅读更多

创建线程有两种方法:继承Thread类和实现Runnable接口。

方法一:继承 Thread 类,覆盖方法 run(), 我们在创建的 Thread 类的子类中重写 run() ,加入线程所要执行的代码即可。下面是一个例子:

 

import java.sql.Timestamp;

/**
 * 第N次线程
 *
 * @version 1.0
 * @author 点子二木
 * @date 2008-3-24
 * @right Copyright (C), 2008
 */
import java.io.*;

class ThreadTest extends Thread {
 int count = 1, number;

 public ThreadTest(int num) {
  number = num;
  System.out.println("创建线程 " + number);
 }

 public void run() {
  while (true) {
   System.out.println("线程 " + number + ":计数 " + count);
   if (++count == 6)
    return;
  }
 }

 public static void main(String args[]) {
  for (int i = 0; i < 5; i++)
   new ThreadTest(i + 1).start();
 }
} 
 

 

 


方法二:实现 Runnable 接口
Runnable 接口只有一个方法 run(),我们声明自己的类实现 Runnable 接口并提供这一方法,将我们的线程代码写入其中,就完成了这一部分的任务。但是 Runnable 接口并没有任何对线程的支持,我们还必须创建 Thread 类的实例,这一点通过 Thread 类的构造函数public Thread(Runnable target);来实现。下面是一个例子:

 

public class MyThread implements Runnable {
int count= 1, number;
public MyThread(int num) {
number = num;
System.out.println("创建线程 " + number);
}
public void run() {
while(true) {
System.out.println("线程 " + number + ":计数 " + count);
if(++count== 6) return;
}
}
public static void main(String args[]) {
for(int i = 0; i < 5; i++) new Thread(new MyThread(i+1)).start();
}
} 
 

 

 

运行结果每次不一样!

两种方法各有千秋,可以灵活运用。

 

 

 

分享到:
评论

相关推荐

    java的多线程使用方法

    java多线程的使用方法如何使用,怎么使用,使用过程中有什么要注意的

    java项目史上最简单的多线程使用方法(demo)

    java项目史上最简单的多线程使用方法(demo),下载下来一看就明白企业实际项目中如何使用多线程提高程序效率,导入idea或者eclipse中,修改以下数据库配置即可直接使用

    C# Timer的多线程使用方法

    使用System.Threading.Timer 使用System.Timers.Timer 分别举例这两个类来实现多线程的时钟,不会阻塞UI线程 例子是Winform的

    线程使用方法

    线程方法里面执行下载数据. // (3). 定义一个异步消息,用来设置图片,原理是非主线程中不能对主线程进行操作.所以需要我们在自己的线程发个异步消息给主线程,进行设置处理 // (4). 在线程runnable执行方法下载数据...

    python多线程使用方法实例详解

    本文实例讲述了python多线程使用方法。分享给大家供大家参考,具体如下: threading 模块支持守护线程, 其工作方式是:守护线程一般是一个等待客户端请求服务的服务器。 如果把一个线程设置为守护线程,进程退出时...

    在Qt(C++)中使用QThread实现多线程 - 星夜之夏 - 博客园1

    1.引言多线程对于需要处理耗时任务的应用很有用,一方面响应用户操作、更新界面显示,另一方面在“后台”进行耗时操作,比如大量运算、复制大文件、网络传输等。使用Qt

    使用三种VC的多线程同步方法编写一个多线程的程序

    1.使用三种VC的多线程同步方法编写一个多线程的程序(要求在屏幕上先显示Hello,再显示World)。 1)基于全局变量的多线程同步程序; 2)基于事件的多线程同步程序; 3)基于临界区的多线程同步程序。

    NET多线程同步方法详解

    .NET多线程同步方法详解(一):... 除了以上的这些对象之外实现线程同步的还可以使用Thread.Join方法。这种方法比较简单,当你在第一个线程运行时想等待第二个线程执行结果,那么你可以让第二个线程Join进来就可以了。

    C#开发技术大全_多线程编程

    C#语言能够支持通过多线程实现的并行代码的执行。每一个线程就是一个独立的可执行程序,可以独立地与其他线程同时执行。而多线程编程则可以在一个应用程序中实现多个任务的...最后,将介绍C#中的常见的线程使用方法。

    线程及方法调用

    线程,有时被称为轻量级进程(Lightweight Process,LWP),是程序执行流的最小单元。一个标准的线程由线程ID,当前指令指针(PC),寄存器集合和堆栈组成。另外,线程是进程中的一个实体,是被系统独立调度和分派的...

    C#.NET多线程实例6个(包括多线程基本使用,多线程互斥等全部多线程使用实例)

    C#.NET多线程实例6个(包括多线程基本使用,多线程互斥等全部多线程使用实例)

    java 多线程同步方法的实例

    java 多线程同步方法的实例 java 多线程同步方法的实例 java 多线程同步方法的实例

    易语言线程返回数据的方法

    易语言线程返回数据的方法源码,线程返回数据的方法,线程

    C# 线程的使用 讲解了C#中使用线程的很多方法

    C# 线程的使用 讲解了C#中使用线程的很多方法 C# 线程的使用 讲解了C#中使用线程的很多方法

    Android多线程高级使用PPT

    Android系列课程第二季:多线程使用方法和高级技巧——深入理解 快速掌握Android开发技术、快速提高,全面掌握Android技术体系,同时对Android中常用的技术以及重点难点能够深入理解、熟练运用。

    c#多线程学习代码资料

    详细介绍多线程使用方法,适合初学多线程学习,由浅入深。

    线程处理基本方法

    线程定义\线程创建\线程暂停|销毁 创建方法解析:执行方法解析:调用过程:销毁线程(在窗体销毁时):开启系统自动启动线程:(在整个程序创建时,就启动对线程的调用)

    线程同步方法,和线程创建方法

    线程隶属于进程,线程是属于进程内部的程序流,目前主流的操作系统都支持多进程,而 每一个进程的内部又可以支持多线程; 进程是重量级的,每个进程都需要独立的内存空间等,因此新建进程对系统资源的消耗比 较大; ...

    C#线程同步的几种方法

    C#线程同步的几种方法 C#线程同步的几种方法

Global site tag (gtag.js) - Google Analytics