본문 바로가기

스레드8

QThread와 main 스레드간의 통신 연결-2- 안녕하세요? 지난번에는 정말 불만족 스러운 시작이 되었습니다만, 그래도 일단 시작은 시작이고, 이 작업을 하기 위해서는 계속해서 작업을 해야 합니다. 아무튼 이 예약포스팅을 작성하고 있는 시점인 2월 3일에는 허리 통증도 많이 나아져서 일상생활에는 무리가 없는데, 조금만 더 하면 완치가 될 것으로 보입니다. 아무튼 서론이 길어졌는데, 일단 작업을 하기 위해서 한번 움직여 보고자 합니다. 지난번의 작업이 그다지 만족스럽지가 않아서, 전부 지우거나 되 돌리기는 힘들기 때문에 하는 수 없이 새로운 py파일을 만들어 보아야 했습니다. 그리고 나서 다음으로 해야 할일은, 일단 QThread와 메인 스레드간의 통신을 위해서 당연 QThread역할을 할 스레드도 필요하지만, 더불어서 시그널을 담당하는 pyqtSign.. 2020. 2. 5.
QThread를 향한 공부-2- 안녕하세요? 이번 포스팅에서는 지난번 포스팅에 이어서 QThread를 공부해 보기 위해서 올리는 포스팅입니다. 일단 지난번 포스팅에서 어떻게 다른 스레드를 실행시키는 것 까지는 성공했는데, 이번 포스팅에서는 어떻게 추가적인 내용을 가지고 실습해본 내용에 대해서 다루어 볼까 합니다. 그리고 나서 다음으로 해야 할일은 위 스크린샷에서 볼 수 있는 것처럼 __init__를 이용해서 일종의 데이터를 받아와서 QRunnable을 생성하는 작업에 대해서 일단 다루어 볼까 합니다. 일단 이런 상황에서 실행을 시켜 보면, 위 스크린샷과 같이 의미를 알 수 없는 빈 데이터 더미들이 생성이 되는데, 이게 나중에 무슨 역할을 하는지는 모르겠습니다. 그리고 나서 다음으로 위 스크린샷처럼 self.fn을 추가시켜 주고 나서, .. 2019. 7. 25.
QThread를 향한 공부 안녕하세요? 지난번 포스팅에서 멀티 프로세싱에서 한계가 있었지만, 한번 찾아보니까, PyQt5에서는 QThread라는 것을 기본적으로 지원하고 있으며, 이게 멀티 스레딩이 된다는 정보까지는 얻었습니다. 그래서 이번 포스팅에서는 이 QThread를 한번 공부해 보는 것으로 포스팅을 하고자 합니다. 먼저 연습을 위해서 MyStockTrader라는 프로젝트 안에서 위 스크린샷과 같이 multithread.py를 만들어 보도록 해야 합니다. 다음으로 일단 인터넷에 나와 있는 코드를 그대로 옮겨 오도록 합니다. 이 코드는 윈도우 창을 하나 띄우고, 시간이 지나면서 카운트가 올라가는 카운터가 있으며, 버튼이 하나 있는 식으로 있습니다. 그리고 나서 버튼을 누르면 위 스크린샷과 같이 sleep명령어를 줘서 5초간 뭐.. 2019. 7. 25.
현재 새로운 것을 공부한다고 잠시 작업이 중단 되었습니다. 안녕하세요? 다름이 아니라 새로운 방법을 이용해야 하는데, 문제는 새로운 방법이라는 것이 스레드라고 해서, 기존의 subprocess와는 많이 다른 방법을 사용하는 것이라는 것을 알 수 있었습니다. 그래서 발생한 문제가 무엇이냐 하면, 바로 너무 생소한 것을 하다보니, 공부해도 당장 이해가 되지 않는다고 해야 할까요? 물론 제가 깊이 이해를 하고 나서 하는 스타일이 아니기는 합니다만, 문제는 QThread라는 것을 이용하기 위해서는 어떻게 시그널과 슬롯을 만드는 지 여부부터 이해하는데 오늘 하루종일 걸렸다는 것 입니다. 이 속도대로라면 잘못하면 이번 주 내내 이해한 것만 어떻게 올리는 데도 상당히 많은 시간이 걸릴 것이라는 생각이 듭니다. 2019. 4. 8.