문제

S60 기반 Nokia 장치 용 Python에서 Bluetooth 게임을 개발하고 있습니다. S60의 Bluetooth 소켓은 상당히 까다로워졌습니다. 두 가지 이유로 :

  1. 나는 파이썬에서 여러 슬레이브 소켓을 마스터 할 수 없으며, 파이썬에서는 할 수 없다고 들었습니다. 그래서 나는 이미 이것을 떠났고 어쨌든 그것을하지 않았습니다.

  2. 다른 부분은 별도의 스레드에서 소켓을 듣고 응용 프로그램의 정상적인 실행으로 사라질 수 없다는 것입니다. 여기서 샘플 코드를 시도했습니다.

http://pastebin.com/f76189841

스레드간에 소켓을 공유하는 동안 ao_callgate ()를 사용합니다.


게시물 (여전히 asswered :-()는 여기에서 찾을 수 있습니다.http://discussion.forum.nokia.com/forum/showthread.php?t=162260

도움이 되었습니까?

해결책

나는 활성 물체에 대해 조금 배웠다. 읽기 및 쓰기 요청은 Blutooth 서버로 전송됩니다. 그러나 한 번에 하나의 요청 만 제한이 있습니다.

새 스레드 (예 : T1)를 생성하고 ao_e32.callgate ()를 사용하여 기본 스레드의 맥락에서 호출합니다. 그 점에서 나는 들어오는 메시지를 기다립니다. Bluetooth를 통해 Mesaage를 보내려면이 스레드를 중지하고 메시지를 보내고 스레드를 다시 시작해야합니다. 그러나 이제 문제는 파이썬에서 스레드를 정지시키는 방법입니다.

PS 스레드 모듈은 S60 용 Python에서 사용할 수 있으며 PC Python의 PC 버전에서 Threading.py를 사용하여 Threding을 설치할 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top