2.编写一个程序,用一个线程显示时间(系统毫秒数,每10ms显示一次),一个线程计算1000000中的最大质数,当质数计算完毕后,停止时间显示。
时间: 2023-09-11 09:10:06 浏览: 55
以下是Python的实现代码:
```python
import threading
import time
# 计算质数
def calculate_prime():
global stop_time
num = 1000000
primes = []
for i in range(2, num+1):
is_prime = True
for j in range(2, int(i**0.5)+1):
if i % j == 0:
is_prime = False
break
if is_prime:
primes.append(i)
stop_time = True
print("最大质数是:", primes[-1])
# 显示时间
def show_time():
while not stop_time:
print("时间:", int(time.time()*1000))
time.sleep(0.01)
stop_time = False
prime_thread = threading.Thread(target=calculate_prime)
time_thread = threading.Thread(target=show_time)
time_thread.start()
prime_thread.start()
prime_thread.join()
time_thread.join()
```
首先定义了两个函数,`calculate_prime()`用于计算1000000以内的最大质数,`show_time()`用于每10ms显示一次系统毫秒数。使用`threading`模块创建两个线程分别执行这两个函数。
在主线程中,启动两个线程并等待计算质数的线程执行完毕。当计算质数的线程执行完毕后,设置`stop_time`为`True`,使得时间显示线程停止执行。
阅读全文
相关推荐


















