There are two ways to create a new thread of execution.
One is to declare a class to be a subclass of Thread
. This subclass should override the run
method of class Thread
. An instance of the subclass can then be allocated and started.
class PrimeThread extends Thread {
long minPrime;
PrimeThread(long minPrime) {
this.minPrime = minPrime;
}
public void run() {
// compute primes larger than minPrime
. . .
}
}
The following code would then create a thread and start it running:
PrimeThread p = new PrimeThread(143);
p.start();
The other way to create a thread is to declare a class that implements the Runnable
interface. That class then implements the run
method. An instance of the class can then be allocated, passed as an argument when creating Thread
, and started. The same example in this other style looks like the following:
class PrimeRun implements Runnable {
long minPrime;
PrimeRun(long minPrime) {
this.minPrime = minPrime;
}
public void run() {
// compute primes larger than minPrime
. . .
}
}
The following code would then create a thread and start it running:
PrimeRun p = new PrimeRun(143);
new Thread(p).start();
其实,JDK中的Thread也不过是由sun自已实现Runnable接口的类而已.public class Thread
extends Object
implements Runnable
分享到:
- 2009-08-26 10:59
- 浏览 785
- 评论(0)
- 论坛回复 / 浏览 (0 / 1410)
- 查看更多
相关推荐
"Java使用Callable和Future创建线程操作示例" Java使用Callable和Future创建线程操作示例主要介绍了Java使用Callable和Future创建线程操作,结合实例形式分析了java使用Callable接口和Future类创建线程的相关操作...
1.方式1:继承 QThread 类方式:通过继承 QThread 类并重写 run() 函数来创建线程,线程对象本身即为线程。 优点:相对简单,易于理解和实现;可以直接重写 run() 函数来定义线程的逻辑;可以通过信号和槽机制与其他...
一、题目: 创建线程,利用互斥实现线程共享变量通信 二、目的 掌握线程创建和终止,加深对线程和进程概念的理解,会用同步与互斥方法实现线程之间的通信。 三、内容和要求 软件界面上点“创建线程” 按钮,创建三个...
预创建线程方式的主要优势在于减少系统开销,特别是在高并发环境下,因为线程创建的开销只发生在程序启动时。然而,这种方法也需要注意线程数量的控制,过多的线程可能会导致内存消耗过大,反而影响服务器性能。因此...
可结合线程是默认状态,意味着在创建线程后,父线程需要通过调用`pthread_join()`函数来等待新线程的结束,以便回收资源和获取线程的返回值。在这个过程中,新线程的内存资源(如栈空间)不会被释放,直到父线程调用...
在VC++环境中,创建线程是一项重要的多任务处理技术,特别是在开发实时系统、网络编程以及高性能应用程序时。本文将深入探讨如何在VC++中创建线程,并基于《vc++网络编程经典案例》一书中的示例进行讲解。 线程是...
创建线程主要有两种方式:一是通过系统调用来创建,比如在POSIX系统中使用`pthread_create`函数;二是通过语言支持,如Java中的`Thread`类或C#的`Thread`类。在给定的描述中,提到的是在VC6.0环境下实现,这意味着...
总结起来,VS2019中的MFC线程创建涉及到创建自定义线程类、覆写关键成员函数、使用 `AfxBeginThread()` 创建线程以及进行线程同步。理解这些概念和实践,对于开发高效、稳定的多线程MFC应用至关重要。
Thread类是C#中另一种创建线程的方式,使用Thread类可以创建一个独立的线程,该线程有它独立的执行路径,能够与其它的线程同时地运行。 使用Thread类创建线程需要手动地创建和管理线程,这需要开发者有充分的线程...
本资源主要关注如何在不同的编程语言中创建线程,以下是对创建线程这一主题的详细阐述。 在Java中,创建线程有以下两种方法: 1. 继承Thread类:创建一个新的类,该类继承自`java.lang.Thread`,然后重写`run()`...
在Java编程语言中,创建线程是实现并发执行任务的关键步骤。Java提供了两种主要的方法来创建线程,分别是直接继承自`Thread`类和实现`Runnable`接口。这两种方法各有其特点和适用场景。 1. **继承Thread类**: 当...
`AfxBeginThread`是MFC提供的一个方便的函数,用于创建线程。它的主要优点在于能自动管理线程的资源,比如清理消息队列、调用`_AFXWIN_INIT`来初始化MFC支持,以及在线程结束时调用`AfxEndThread`。这些都是MFC程序...
易语言类方法创建线程源码,类方法创建线程,ddd,取当前类指针,取方法指针,创建线程,线程接口,创建循环线程,关闭循环线程,取循环线程空闲索引,循环线程接口,线程_创建线程,线程_等待执行完毕,线程_线程结束,操作_取...
功能:VB创建线程(其它语言没测试过,不知是否能用)。 编写原因:鉴于VB创建稳定线程的需求 特点:可替代API CreateThread来创建线程,且自动对线程进行初始化,线程函数中不再需要初始化线程就可以使用对象、类、...
在Winform应用中,动态创建线程通常用于执行耗时的操作,避免阻塞UI。我们可以通过以下步骤实现: 1. 创建一个新的Thread实例,传入一个方法的委托作为参数。这个方法将在新线程上执行。 ```csharp Thread new...
创建线程方式的对比 - **实现`Runnable`/`Callable`接口 vs 继承`Thread`类** - 实现接口的优势在于可以同时继承其他类,而继承`Thread`类则无法再继承其他类。 - 使用接口方式创建的线程,多个线程可以共享同一...
`AfxBeginThread`函数是MFC提供的一种便捷方式,用于创建一个新的线程。下面将详细讨论`AfxBeginThread`的使用、工作线程的概念、多线程编程的重要性以及MFC中的线程通信。 1. **`AfxBeginThread`函数详解** `...
1. 创建线程结构体 首先,需要定义一个线程结构体,用于存储线程的相关信息。例如: ```cpp typedef struct ThreadInfo { CString name; int age; CProgressCtrl *progress; } Thread; ``` 这个结构体中包含了...
易语言创建远程线程源码,创建远程线程,CALL,GetProcessID,OpenProcess,VirtualAllocEx,WriteProcessMemoryByte,CreateRemoteThread,WaitForSingleObject,CreateToolhelp32Snapshot,Process32Next,Process32First,...