2012-01-26 2 views
-1

gui는 얼어서 실을 꿰매고 있었고, 여전히 나에게 얼어 붙어있었습니다. 부적절하게 무언가를 실을 수 있습니까?파이썬에서의 스레딩

업데이트 코드 : http://pastie.org/3259900

은 어떤이의 스레드를 통합하는 가장 좋은 방법이 있을까요?

+0

귀하의 질문은 실제 버그가 아닌 성능과 관련이 있습니다. – octopusgrabbus

+0

코드를 게시하십시오 ** 여기 **, 제발. 합리적인 게시물에 비해 너무 길면 편집하십시오. 적절한 질문을하기 위해서는 어쨌든 문제를 나타내는 최소한의 예를 만들어 낼 수 있어야합니다. –

+0

누구나 아이디어가 있습니까? – user1152873

답변

3

처럼 스레드 클래스의이 보일 것입니다 :

class workingthread(threading.Thread): 
    def __init__(self): 
     threading.Thread.__init__(self) 

    def run(self): 
     while 1: 
      chat = skype.CreateChatWith(name) 
      chat.SendMessage(message) 
+0

덕분에 그 부분을 고쳤습니다. – user1152873

+0

문제가 해결 되었습니까? 또는 여전히 정지합니까? – xkrz

+0

그것의 고정 부분을 고정하지만 난 아직도 어떻게 내가이 프로그램 롤 스레드를 통합해야 알아 내려고. – user1152873

0

편집을 시작 : 를 내가 처음 파이썬 코드가 제작 된 방법으로 문제가 성능 문제의 일에 질문을했다, 그리고. 몇 달 전에 Boston Python Meetup에서 논의 된 내용을 토대로 필자는 내 대답이 당신에게 도움이 될 것이라고 생각합니다. 끝 편집 :

적어도 파이썬 스레드에 대한 이해는 CPython을 사용하는 경우 각 스레드는 GIL (전역 인터프리터 잠금)에 의존하므로 각 스레드는 한 번에 하나씩 실행됩니다. 여러 프로세스를 사용하는 경우 그렇지 않습니다. 일부 Python 배포판에서는 GIL 문제를 해결하려고 시도했지만 CPython은 다루지 않았습니다.

이제 C에서 스레딩을 구현하고 Python C 인터페이스 중 하나를 사용하여 해당 코드에 액세스하면 해당 스레드는 프로세서 가용성에만 종속적으로 동시에 실행될 수 있지만 GIL에 의해 유지되지는 않습니다.