스레드는 운영 체제에서 직접 지원하는 실행 단위이므로 고급 언어에는 일반적으로 멀티스레딩 지원이 내장되어 있으며 Python도 예외는 아닙니다. 또한 Python의 스레드는 시뮬레이션된 스레드가 아닌 실제 Posix 스레드입니다.
Python의 표준 라이브러리는 _thread와 threading의 두 가지 모듈을 제공합니다. _thread는 하위 수준 모듈이고 threading은 _thread를 캡슐화하는 상위 수준 모듈입니다. 대부분의 경우 고급 모듈 스레딩만 사용해야 합니다. (추천 학습: Python 동영상 튜토리얼)
스레드를 시작하려면 함수를 전달하고 Thread 인스턴스를 만든 다음 start()를 호출하여 실행을 시작합니다.
import time, threading# 新线程执行的代码:def loop(): print('thread %s is running...' % threading.current_thread().name) n = 0 while n < 5: n = n + 1 print('thread %s >>> %s' % (threading.current_thread().name, n)) time.sleep(1) print('thread %s ended.' % threading.current_thread().name) print('thread %s is running...' % threading.current_thread().name) t = threading.Thread(target=loop, name='LoopThread') t.start() t.join() print('thread %s ended.' % threading.current_thread().name)
실행 결과는 다음과 같습니다.
thread MainThread is running... thread LoopThread is running... thread LoopThread >>> 1 thread LoopThread >>> 2 thread LoopThread >>> 3 thread LoopThread >>> 4 thread LoopThread >>> 5 thread LoopThread ended. thread MainThread ended.
모든 프로세스는 기본적으로 스레드를 시작하므로 이 스레드를 메인 스레드라고 부르며, 메인 스레드는 새 스레드를 시작할 수 있습니다. Python의 스레딩 모듈에는 항상 현재 스레드의 인스턴스를 반환하는 current_thread() 함수가 있습니다. 메인 스레드 인스턴스의 이름은 MainThread이고, 하위 스레드의 이름은 생성 시 지정됩니다. LoopThread를 사용하여 하위 스레드의 이름을 지정합니다. 이름은 인쇄할 때 표시용으로만 사용되며 다른 의미는 전혀 없습니다. 스레드 이름을 지정할 수 없으면 Python은 자동으로 스레드 이름을 Thread-1, Thread-2로 지정합니다...
더 많은 Python 관련 기술 기사를 확인하세요. Python Tutorial 칼럼을 방문하여 공부해보세요!
위 내용은 파이썬에서 스레딩을 설치하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!