Добавил:
Vanomaj
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:lab_2 / lab2_os_2
.py#!/usr/bin/env python3
import threading
import datetime
import os
# Функция для вывода информации о потоке
def print_thread_info(thread_name, parent_pid):
thread_id = threading.current_thread().ident
current_time = datetime.datetime.now().strftime("%H:%M:%S")
print(f"{thread_name} ID: {thread_id} PID: {parent_pid} время: {current_time}")
def main():
# Получаем PID родительского процесса
parent_pid = os.getpid()
# Создаем первый дочерний поток
thread1 = threading.Thread(target=print_thread_info, args=("Дочерний поток 1", parent_pid))
# Создаем второй дочерний поток
thread2 = threading.Thread(target=lambda: print_thread_info("Дочерний поток 2", parent_pid))
# Вывод информации о родительском процессе
print_thread_info("Родительский процесс", parent_pid)
# Запускаем дочерние потоки
thread1.start()
thread2.start()
# Ждем завершения обоих дочерних потоков
thread1.join()
thread2.join()
if __name__ == "__main__":
main()
Соседние файлы в папке lab_2