파이썬 스레드가 스레딩이 아닙니다.

Spac3

나는 Google 전체를 살펴 보았고 이것이 작동하지 않는 것 같습니다. 나는 둘 다 무한 루프 인 2 개의 함수를 스레드하려고합니다.

아래의 추출을 보면 첫 번째 스레드 만 시작하고 다음 스레드로 진행하지 않습니다.

추신 : 두 개의 스레드를 교체하면 두 번째 스레드에서 동일한 문제가 발생합니다.

def syslog_service():
    syslog_server = socketserver.UDPServer((syslog_host,syslog_port), Syslog_Server)
    syslog_server.serve_forever()

def cleanup_old_logs_service():
#   lock = threading.Lock()
#   threading.Thread.__init__(self)
    global syslog_retention_hours
    global RUNNING
    while RUNNING:
#       cleanup_old_logs_service.lock.acquire()
        cleanup.old_logs(syslog_retention_hours)
#       cleanup_old_logs_service.lock.release() 
        time.sleep(10)

if __name__ == "__main__":
    try:
        logger.info("Starting main thread")
        config()
        logger.info("Starting system testing")
        test()
        logger.info("Config loaded")
        thread1 = cleanup_old_logs_service()
        thread2 = syslog_service()
        thread1.start()
        logger.info("Syslog cleanup service running")
        thread2.start()
        logger.info("Syslog server running")
simon.sim

첫 번째 스레드 만 실행되는 이유는 실제로 프로그램에 스레드가 하나만 있기 때문입니다. 당신은 쓸 때 thread1 = cleanup_old_logs_service()thread2 = syslog_service()는 새로운 스레드를 생성하지만, 단지 2 개 개의 다른 변수에 함수의 반환 값을 할당하지 않습니다. 이러한 이유로 프로그램이를 만나는 즉시 thread1실행 cleanup_old_logs_service()되고 무한 루프에 갇히게됩니다.

새 스레드를 만들려면 threading모듈을 가져 와서 threadObj개체를 만들고 다음과 같이 스레드를 시작합니다.

import threading

threadObj = threading.Thread(target=cleanup_old_logs_service)
threadObj.start()

이렇게하면 함수 cleanup_old_logs_service()가 새 스레드에서 실행됩니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

이 다중 스레딩 악마 파이썬 코드 이해

분류에서Dev

sleep () 스레드는 주 스레드이며 별도의 지정된 스레드가 아닙니다.

분류에서Dev

파이썬 스레딩-스레드가 이미 실행 중인지 어떻게 알 수 있습니까?

분류에서Dev

크로스 스레드 작업이 유효한 제어가 아닙니다.

분류에서Dev

파이썬. 스레딩

분류에서Dev

파이썬 다중 스레드 성능

분류에서Dev

파이썬 스레딩 : 두 번째 스레드는 첫 번째 스레드가 완료 될 때까지 대기합니다.

분류에서Dev

파이썬에서 다중 스레딩 시스템 호출

분류에서Dev

이 코드는 파이썬 스레딩 모듈로 안전합니까?

분류에서Dev

다중 스레딩 파이썬과 함께 for 루프 사용

분류에서Dev

파이썬이 파이썬 스크립트 내에서 스레딩을 허용하는지 알려줍니다.

분류에서Dev

멀티 다운로드에 스레딩을 사용하는 파이썬 방법

분류에서Dev

Google 스프레드 시트 야후 금융 importXML 텍스트가 td 데이터가 아닙니다.

분류에서Dev

Google 스프레드 시트 야후 금융 importXML 텍스트가 td 데이터가 아닙니다.

분류에서Dev

cronjob에서 파이썬 다중 스레딩 문제가 실행되지 않음

분류에서Dev

TransactionManagerException :이 스레드에 대한 트랜잭션이 최신이 아닙니다.

분류에서Dev

다른 소스와 메일에 대한 텍스트 파일의 레코드 수를 확인하는 방법은 레코드가 0이 아닙니다.

분류에서Dev

PHP pthread가 멀티 스레딩이 아닌 것 같습니다.

분류에서Dev

.menu ()는 함수가 아닙니다. jQuery 업그레이드

분류에서Dev

레이크 중단! TypeError : 부품이 클래스가 아닙니다.

분류에서Dev

nuxt-link 디스플레이 슬러그가 ID가 아닙니다.

분류에서Dev

TypeError : 'NoneType'객체가 호출 가능한 파이썬이 아닙니다.

분류에서Dev

QThread : GUI 파이썬으로 스레딩

분류에서Dev

파이썬 스레딩 어려움

분류에서Dev

파이썬 스레딩 추측 게임

분류에서Dev

멀티 스레딩 프로그램 (파이썬)을 만들어야합니다.

분류에서Dev

파이썬 스레딩 오류, 누구든지 해결책이 있습니까?

분류에서Dev

Float 객체는 호출 가능한 파이썬이 아닙니다.

분류에서Dev

TypeError : 'int'객체는 호출 가능한 파이썬이 아닙니다.

Related 관련 기사

  1. 1

    이 다중 스레딩 악마 파이썬 코드 이해

  2. 2

    sleep () 스레드는 주 스레드이며 별도의 지정된 스레드가 아닙니다.

  3. 3

    파이썬 스레딩-스레드가 이미 실행 중인지 어떻게 알 수 있습니까?

  4. 4

    크로스 스레드 작업이 유효한 제어가 아닙니다.

  5. 5

    파이썬. 스레딩

  6. 6

    파이썬 다중 스레드 성능

  7. 7

    파이썬 스레딩 : 두 번째 스레드는 첫 번째 스레드가 완료 될 때까지 대기합니다.

  8. 8

    파이썬에서 다중 스레딩 시스템 호출

  9. 9

    이 코드는 파이썬 스레딩 모듈로 안전합니까?

  10. 10

    다중 스레딩 파이썬과 함께 for 루프 사용

  11. 11

    파이썬이 파이썬 스크립트 내에서 스레딩을 허용하는지 알려줍니다.

  12. 12

    멀티 다운로드에 스레딩을 사용하는 파이썬 방법

  13. 13

    Google 스프레드 시트 야후 금융 importXML 텍스트가 td 데이터가 아닙니다.

  14. 14

    Google 스프레드 시트 야후 금융 importXML 텍스트가 td 데이터가 아닙니다.

  15. 15

    cronjob에서 파이썬 다중 스레딩 문제가 실행되지 않음

  16. 16

    TransactionManagerException :이 스레드에 대한 트랜잭션이 최신이 아닙니다.

  17. 17

    다른 소스와 메일에 대한 텍스트 파일의 레코드 수를 확인하는 방법은 레코드가 0이 아닙니다.

  18. 18

    PHP pthread가 멀티 스레딩이 아닌 것 같습니다.

  19. 19

    .menu ()는 함수가 아닙니다. jQuery 업그레이드

  20. 20

    레이크 중단! TypeError : 부품이 클래스가 아닙니다.

  21. 21

    nuxt-link 디스플레이 슬러그가 ID가 아닙니다.

  22. 22

    TypeError : 'NoneType'객체가 호출 가능한 파이썬이 아닙니다.

  23. 23

    QThread : GUI 파이썬으로 스레딩

  24. 24

    파이썬 스레딩 어려움

  25. 25

    파이썬 스레딩 추측 게임

  26. 26

    멀티 스레딩 프로그램 (파이썬)을 만들어야합니다.

  27. 27

    파이썬 스레딩 오류, 누구든지 해결책이 있습니까?

  28. 28

    Float 객체는 호출 가능한 파이썬이 아닙니다.

  29. 29

    TypeError : 'int'객체는 호출 가능한 파이썬이 아닙니다.

뜨겁다태그

보관