Java中的线程函数及其示例
发布时间:2023-08-15 13:14:38
在Java中,线程函数是指在多线程程序中执行的功能代码。下面是一些常见的线程函数及其示例:
1. run()函数:run()函数是Thread类中的一个方法,用于定义线程的执行逻辑。当调用线程的start()方法时,会自动调用run()函数来执行其逻辑。下面是一个简单的示例:
class MyThread extends Thread {
public void run() {
System.out.println("Thread is running");
}
}
public class Main {
public static void main(String[] args) {
MyThread thread = new MyThread();
thread.start();
}
}
2. start()函数:start()函数用于启动一个线程,并调用线程的run()函数执行其逻辑。下面是一个示例:
class MyThread extends Thread {
public void run() {
System.out.println("Thread is running");
}
}
public class Main {
public static void main(String[] args) {
MyThread thread = new MyThread();
thread.start();
}
}
3. sleep()函数:sleep()函数可以使当前线程暂停执行一段时间。下面是一个示例:
public class Main {
public static void main(String[] args) {
try {
System.out.println("Before sleep");
Thread.sleep(1000); // 线程暂停1秒
System.out.println("After sleep");
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
4. join()函数:join()函数可以等待一个线程执行完毕后再继续执行其他线程。下面是一个示例:
class MyThread extends Thread {
public void run() {
System.out.println("Thread is running");
}
}
public class Main {
public static void main(String[] args) {
MyThread thread = new MyThread();
thread.start();
try {
thread.join(); // 等待线程执行完毕
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("Main thread is running");
}
}
5. yield()函数:yield()函数可以让当前线程让出CPU执行权给其他线程。下面是一个示例:
class MyThread extends Thread {
public void run() {
for (int i = 1; i <= 5; i++) {
System.out.println(Thread.currentThread().getName() + ": " + i);
Thread.yield(); // 让出CPU执行权
}
}
}
public class Main {
public static void main(String[] args) {
MyThread thread1 = new MyThread();
MyThread thread2 = new MyThread();
thread1.start();
thread2.start();
}
}
以上是一些常见的线程函数及其示例。在多线程编程中,合理使用这些函数可以实现线程间的协作与同步,提高程序的效率和运行速度。
