본문 바로가기

쓰기

지난번에 올린 쓰레드 문제를 가진 녀석입니다.

왜인진 모르겠지만 돌아가지 않습니다 ㄱ-
조회 수 :
14035
등록일 :
2009.01.06
11:09:26
엮인글 :
https://arallab.hided.net/4209/92b/trackback
게시글 주소 :
https://arallab.hided.net/board_devtalk/4209

whoami

2009.01.06
18:56:17
찾았습니다.

문제는.. 생성자에서 쓰레드를 생성시킨 것이었습니다.

// AutoLoad.h
class CAutoLoad {
  ...
  public:
  void StartThread();
};

// AutoLoad.cpp
CAutoLoad::CAutoLoad()
{ // 생성자
   g_pLoadThread = NULL;  // 여기서 쓰레드 만들지 말것
   g_bRunning=false;
}

void CAutoLoad::StartThread()
{
  g_pLoadThread = AfxBeginThread(...);
  g_bRunning=true;
  g_pLoadThread->ResumeThread(); // 꼭 SUSPEND 로 만든 뒤 Resume 할 필요는 없지 않을까나..
}

// CustomDic2.cpp
CCustmoDic2::CCustomDic2()
{
  ...

  // 일단 제가 테스트할때는 여기서 생성 않았지만 어차피 CAutoLoad 생성자에서
  // 쓰레드 생성 않으니 그냥 CAutoLoad 클래스를 생성해도 될듯
  m_pAutoLoad = NULL;
}
...
void CCustomDic2::FileClear()
{
  // 아마 가장 처음에 불리는 m_pAutoLoad 관련 메쏘드가 이것인듯.
  if (!m_pAutoLoad)
  {
     m_pAutoLoad = new CAutoLoad; // 일단 쓰레드 생성 확인 방법을 잘 몰라 클래스 생성을 체크하는 방법을 사용.
     m_pAutoLoad->StartThread(); // 쓰레드 생성을 이렇게 따로 해줌
   }
   m_pAutoLoad->FileClear();
}

// 혹은.. 아예 CATPluginApp 에서 CCustomDic2 를 생성시키고 나서 바로 StartThread() 를 부르는
// 방법도 생각해 볼 수 있음.

Hide_D

2009.01.06
20:47:53
감사합니다! 즉시 확인해 볼게요!
List of Articles
번호 제목 글쓴이 날짜 조회 수sort
공지 Talk [필독] 테스트필터 사용시 주의사항 라파에 2008-08-03 155437
329 Archive [플러그인, 소스] FixControlCharactor 20080815(테스트버전) [2] file Hide_D 2008-08-15 7533
328 Talk 퓩퓩... 퓩퓩... oTL whoami 2008-08-02 7557
327 Talk 문자열 -> Hex 변환이 제대로 안되네요. [7] Hide_D 2008-08-02 7561
326 Archive [플러그인, 소스] CmdFilter 테스트 버전 20080806 [4] file whoami 2008-08-06 7719
325 Archive [플러그인, 소스] CustomSD 0.3 20080810(테스트버전) [2] file Hide_D 2008-08-10 7743
324 Archive [플러그인, 소스] RLCmd 20080806 file whoami 2008-08-06 7775
323 Talk Hide_D군님, CCustomDic2 의 문제점을 알 것 같습니다.. [1] whoami 2008-08-12 7811
322 Archive [플러그인,소스] ezTransXP with CustomDic 0.3 20080805(테스트버전) file Hide_D 2008-08-04 7830
321 Archive [플러그인, 소스] FixControlCharactor 20080817_4(테스트버전) file Hide_D 2008-08-17 7877
320 Talk DumpText를 만들고 있는데... [2] Hide_D 2008-08-02 7892
319 Talk 리얼라이브 세이브에 대해서... [4] 나는누구인감? 2008-08-01 7894
318 Archive [플러그인] ATCode - OVERWRITE 테스트 버전 20080721 file whoami 2008-07-21 7900
317 Talk 0.3에서 추가할것 Hide_D 2008-08-03 7908
316 Talk whoami님 Util.h의 옵션 파서가 [4] Hide_D 2008-08-10 7908
315 Talk 플러그인을 만들다가 '또다시' 엄청난 실수를 저질렀다는걸 깨달았습니다. [2] Hide_D 2008-08-12 7929
314 Archive [플러그인,소스] 사용자사전 0.3 20080813 (RC) file Hide_D 2008-08-13 7965
313 Talk cmd로 리버ex 테스트 [2] file 앙마vv 2008-07-25 8011
312 Archive [플러그인, 소스] CustomSD 0.3 20080810_2 [1] file Hide_D 2008-08-10 8012
311 Archive [플러그인, 소스] DenyWord 테스트 버전 20080809 [1] file whoami 2008-08-09 8067
310 Archive [플러그인, 소스] DenyWord 테스트 버전 20080811 file whoami 2008-08-11 8097