Microsoft MVP성태의 닷넷 이야기
안녕하세요. ocx의 비동기 또는 쓰레드에서 호출 [링크 복사], [링크+제목 복사],
조회: 17908
글쓴 사람
동동이 (pudongdong4 at gmail.com)
홈페이지
첨부 파일
 

안녕하세요. 성태님?~
항상 사이트 잘 보고있습니다.

다름 아니오라 수차례 테스트를 해보았는데, 답이 없어서
여쭤보게 되었습니다.

제가 MFC용 프로그램을 ocx로 만들어서 C#에서 불러서 쓰고있는데요,
MFC용 ocx가 여러개 입니다.
물론 하는일은 각기 다른 ocx입니다.

그래서 멀티쓰레드로 돌리면 되겠지? 하고 돌렸는데,흠..
한쪽이 다 실행되고 나서 다음 함수들이 실행되더라고요.

나중에 찾아보다가 알게된것이 ocx는 멀티쓰레드가 구조 자체가 STA 라서
되기 힘들다는 것이었는데요.

혹시나해서 워커쓰레드를 통해서 돌려보았는데, 마찬가지이고,
BeginInovke를 사용해서 해봤는데도 마찬가지 였습니다.

각 ocx가 하는일은 간단한데, 동시에 가능하게 하는 방법이 없을까요?








[최초 등록일: ]
[최종 수정일: 6/25/2014]


비밀번호

댓글 작성자
 



2014-06-25 01시38분
그러니까,

TestOCX ocx1 = new TestOCX();
TestOCX ocx2 = new TestOCX();

라고 되어 있는 상태에서 "스레드 1"에서 ocx1.DoSleep(5초)을 호출하고 "스레드 2"에서 ocx2.DoSleep(5초)을 호출한 경우 총 10초의 시간이 걸린다는 건가요?

(음... 그럴리가 없을 텐데, 확인을 위해 다시 질문드립니다.)
정성태

NoWriterDateCnt.TitleFile(s)