定义四个线程,两个线程的优先级分别设为最高、最小,另外两个线程的优先级设为正常,每个线程在执行过程中输出线程的名字和输出1-30数字。 代码:
时间: 2023-11-28 17:48:35 浏览: 34
下面是一个使用 Python 语言编写的示例代码,创建了四个线程,其中两个优先级最高和最低,另外两个为正常优先级,每个线程都会输出自己的名字和输出1-30数字:
```python
import threading
# 定义线程类
class MyThread(threading.Thread):
def __init__(self, name, priority):
super(MyThread, self).__init__()
self.thread_name = name
self.priority = priority
# 重写 run 方法
def run(self):
# 设置线程优先级
threading.current_thread().priority = self.priority
for i in range(1, 31):
print(self.thread_name, ":", i)
# 创建四个线程
t1 = MyThread("Thread1", threading._ThreadPriority.HIGHEST)
t2 = MyThread("Thread2", threading._ThreadPriority.LOWEST)
t3 = MyThread("Thread3", threading._ThreadPriority.NORMAL)
t4 = MyThread("Thread4", threading._ThreadPriority.NORMAL)
# 启动线程
t1.start()
t2.start()
t3.start()
t4.start()
# 等待线程执行完毕
t1.join()
t2.join()
t3.join()
t4.join()
```
在上述代码中,我们首先定义了一个继承自 threading.Thread 的 MyThread 类,用于创建自定义线程。在 MyThread 类的构造函数中,我们传入线程的名称和优先级。然后,在 run 方法中,我们使用 threading.current_thread() 方法获取当前线程对象,然后通过设置 priority 属性的值来设置线程的优先级。最后,我们使用 for 循环输出线程名称和数字。在主函数中,我们创建了四个线程,并分别启动它们,最后使用 join 方法等待所有线程执行完毕。