1 |
1
프로세서에 의해서 메인 스레드(main thread)가 제1 태스크(task)에 대한 요청 메시지를 생성하는 단계; 및상기 프로세서에 의해서 상기 요청 메시지에 기초한 통신에 응답하여, 상기 제1 태스크가 동기식 통신이 필요한 태스크인지 여부에 따라 동기화 리소스(synchronized resource)를 통해 제2 태스크의 수행을 위한 상기 메인 스레드의 동작 상태를 실행 대기 상태 또는 실행 상태로 전환하는 단계를 포함하고,상기 제1 태스크는 상기 메인 스레드에 의해 수행된 현재 태스크이고, 상기 제2 태스크는 상기 메인 스레드에 의해 수행될 다음 태스크이고,상기 요청 메시지에 기초한 통신은 비블로킹 소켓 채널(non-blocking socket channel)을 통해 수행되고,상기 제2 태스크는 상기 제1 태스크가 동기식 통신이 필요한 태스크인 경우 상기 제1 태스크에 대한 처리 결과인 결과 값을 이용하여 수행되는통신 방법
|
2 |
2
제1항에 있어서,상기 전환하는 단계는,상기 요청 메시지를 서버에 송신하는 단계;상기 송신 후에 상기 메인 스레드가 상기 동기화 리소스를 통해 실행 대기 상태로 전환하는 단계;상기 서버로부터 상기 요청 메시지에 대한 요청이 처리된 응답 메시지를 수신하는 단계; 및상기 수신 후에 프로세싱 스레드(processing thread)가 상기 동기화 리소스를 통해 상기 메인 스레드를 실행 상태로 전환하는 단계;를 포함하는 통신 방법
|
3 |
3
제2항에 있어서,상기 송신하는 단계는,상기 메인 스레드가 상기 요청 메시지를 송신 큐(sending queue)를 통해 송신 스레드(sending thread)로 전송하는 단계;상기 송신 스레드가 상기 요청 메시지를 상기 서버에 송신하는 단계를 포함하는 통신 방법
|
4 |
4
제3항에 있어서,상기 실행 대기 상태로 전환하는 단계는,상기 송신 스레드가 상기 요청 메시지를 상기 서버에 송신한 후에 상기 메인 스레드가 상기 동기화 리소스로부터 상기 동기화 리소스에 대한 소유 상태를 독점하는 락(lock)을 획득하는 단계; 및상기 락을 획득한 메인 스레드가 상기 동기화 리소스를 통해 실행 대기 상태로 전환하는 단계를 포함하는 통신 방법
|
5 |
5
제4항에 있어서,상기 실행 대기 상태로 전환된 상기 메인 스레드가 상기 락을 놓는 단계를 더 포함하는 통신 방법
|
6 |
6
제5항에 있어서,상기 수신하는 단계는,수신 스레드(receiving thread)가 상기 응답 메시지를 수신하는 단계; 및상기 수신 스레드가 상기 응답 메시지를 수신 큐(sending queue)를 통해 프로세싱 스레드(processing thread)로 전송하는 단계를 포함하는 통신 방법
|
7 |
7
제6항에 있어서,상기 메인 스레드를 실행 상태로 전환하는 단계는,상기 프로세싱 스레드가 상기 응답 메시지를 수신한 후에 상기 락을 획득하는 단계; 및상기 락을 획득한 상기 프로세싱 스레드가 상기 메인 스레드를 상기 동기화 리소스를 통해 실행 상태로 전환시키는 단계를 포함하는 통신 방법
|
8 |
8
제7항에 있어서,상기 프로세서에 의해서 상기 메인 스레드를 실행 상태로 전환시킨 상기 프로세싱 스레드가 상기 락을 놓는 단계를 더 포함하는 통신 방법
|
9 |
9
제8항에 있어서,상기 프로세서에 의해서 상기 프로세싱 스레드가 상기 응답 메시지를 수신한 후에 상기 응답 메시지에서 상기 요청 메시지의 요청에 대한 상기 서버의 처리 결과 값을 획득하는 단계;상기 프로세서에 의해서 상기 프로세싱 스레드가 상기 결과 값을 상기 메인 스레드에 전송하는 단계; 및상기 프로세서에 의해서 상기 실행 상태로 전환된 상기 메인 스레드가 상기 결과 값에 기초하여 상기 제2 태스크를 처리하는 단계를 더 포함하는 통신 방법
|
10 |
10
통신 미들웨어; 및상기 통신 미들웨어를 실행하기 위한 프로세서를 포함하고,상기 통신 미들웨어가 상기 프로세서에 의해 실행될 때, 상기 통신 미들웨어는,메인 스레드(main thread)가 제1 태스크(task)에 대한 요청 메시지를 생성하는 단계; 및상기 요청 메시지에 기초한 통신에 응답하여, 상기 제1 태스크가 동기식 통신이 필요한 태스크인지 여부에 따라 동기화 리소스(synchronized resource)를 통해 제2 태스크의 수행을 위한 상기 메인 스레드의 동작 상태를 실행 대기 상태 또는 실행 상태로 전환하는 단계를 수행하고,상기 제1 태스크는 상기 메인 스레드에 의해 수행된 현재 태스크이고, 상기 제2 태스크는 상기 메인 스레드에 의해 수행될 다음 태스크이고,상기 요청 메시지에 기초한 통신은 비블로킹 소켓 채널(non-blocking socket channel)을 통해 수행되고,상기 제2 태스크는 상기 제1 태스크가 동기식 통신이 필요한 태스크인 경우 상기 제1 태스크에 대한 처리 결과인 결과 값을 이용하여 수행되는통신 장치
|
11 |
11
제10항에 있어서,상기 전환하는 단계는,상기 요청 메시지를 서버에 송신하는 단계;상기 송신 후에 상기 메인 스레드가 상기 동기화 리소스를 통해 실행 대기 상태로 전환하는 단계;상기 서버로부터 상기 요청 메시지에 대한 요청이 처리된 응답 메시지를 수신하는 단계; 및상기 수신 후에 프로세싱 스레드(processing thread)가 상기 동기화 리소스를 통해 상기 메인 스레드를 실행 상태로 전환하는 단계;를 포함하는 통신 장치
|
12 |
12
제11항에 있어서,상기 송신하는 단계는,상기 메인 스레드가 상기 요청 메시지를 송신 큐(sending queue)를 통해 송신 스레드(sending thread)로 전송하는 단계;상기 송신 스레드가 상기 요청 메시지를 상기 서버에 송신하는 단계를 포함하는 통신 장치
|
13 |
13
제12항에 있어서,상기 실행 대기 상태로 전환하는 단계는,상기 송신 스레드가 상기 요청 메시지를 상기 서버에 송신한 후에 상기 메인 스레드가 상기 동기화 리소스로부터 상기 동기화 리소스에 대한 소유 상태를 독점하는 락(lock)을 획득하는 단계; 및상기 락을 획득한 메인 스레드가 상기 동기화 리소스를 통해 실행 대기 상태로 전환하는 단계를 포함하는 통신 장치
|
14 |
14
제13항에 있어서,상기 실행 대기 상태로 전환된 상기 메인 스레드가 상기 락을 놓는 단계를 더 포함하는 통신 장치
|
15 |
15
제14항에 있어서,상기 수신하는 단계는,수신 스레드(receiving thread)가 상기 응답 메시지를 수신하는 단계; 및상기 수신 스레드가 상기 응답 메시지를 수신 큐(sending queue)를 통해 프로세싱 스레드(processing thread)로 전송하는 단계를 포함하는 통신 장치
|
16 |
16
제15항에 있어서,상기 메인 스레드를 실행 상태로 전환하는 단계는,상기 프로세싱 스레드가 상기 응답 메시지를 수신한 후에 상기 락을 획득하는 단계; 및상기 락을 획득한 상기 프로세싱 스레드가 상기 메인 스레드를 상기 동기화 리소스를 통해 실행 상태로 전환시키는 단계를 포함하는 통신 장치
|
17 |
17
제16항에 있어서,상기 통신 미들웨어는,상기 메인 스레드를 실행 상태로 전환시킨 상기 프로세싱 스레드가 상기 락을 놓는 단계를 더 수행하는 통신 장치
|
18 |
18
제17항에 있어서,상기 통신 미들웨어는,상기 프로세싱 스레드가 상기 응답 메시지를 수신한 후에 상기 응답 메시지에서 상기 요청 메시지의 요청에 대한 상기 서버의 처리 결과 값을 획득하는 단계;상기 프로세싱 스레드가 상기 결과 값을 상기 메인 스레드에 전송하는 단계; 및상기 실행 상태로 전환된 상기 메인 스레드가 상기 결과 값에 기초하여 상기 제2 태스크를 처리하는 단계를 더 수행하는 통신 장치
|