python-다선정 소연련
제목: 다중 스레드의threading 모듈 연습
# encoding=utf-8
#
# 3
# def coding():
# for x in range(3):
# print(' %s' %x)
# time.sleep(1)
#
# def drawing():
# for x in range(3):
# print(' %s' %x)
# time.sleep(1)
#
# def main():
# coding()
# drawing()
#
# if __name__ == '__main__':
# main()
import time
import threading
# :
# 3
def coding():
for x in range(3):
print(' %s' %threading.current_thread())
time.sleep(1)
def drawing():
for x in range(3):
print(' %s' %threading.current_thread())
time.sleep(1)
def main():
# threading.Thread
# target
# : ,
# coding():
t1 = threading.Thread(target=coding)
t2 = threading.Thread(target=drawing)
t1.start()
t2.start()
print(threading.enumerate())
if __name__ == '__main__':
main()
2. Thread 클래스:
# encoding=utf-8
import threading
import time
class CodingThread(threading.Thread):
def run(self):
for x in range(3):
print(' %s' %threading.current_thread())
time.sleep(1)
class DrawingThread(threading.Thread):
def run(self):
for x in range(3):
print(' %s' %threading.current_thread())
time.sleep(1)
def main():
t1 = CodingThread()
t2= DrawingThread()
t1.start()
t2.start()
if __name__ == '__main__':
main()
3. 글로벌 변수 공유 문제
# encoding=utf-8
import threading
VALUE = 0
#
gLock = threading.Lock()
def add_value():
# global
global VALUE
#
gLock.acquire()
#
for x in range(10000000):
VALUE +=1
#
gLock.release()
print('value, %d' %VALUE)
def main():
for x in range(2):
t =threading.Thread(target=add_value())
t.start()
if __name__ == '__main__':
main()
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.