|
명확한 답변 감사합니다.
Julien 님이 쓰신 글 :
: 리스트의 끝에 쓰는 쓰레드보다 지우는 쓰레드가 먼저 동작하면 에러가 날테니 동기화를 해야 하죠.
:
: 초보자 님이 쓰신 글 :
: : 제가 만든 프로그램이 메인에서 하나의 쓰레드만 만들어 strList라는 TStringList를 서로 사용하는 프로그램입니다.
: :
: : 메인에서는 strList->AddObject()만 사용하고
: : 쓰레드에서는 strList->Strings[0]과 strList->Delete(0) 만 사용하고 있습니다.
: :
: : 이런식으로 작업이 분리가 되어 있는데 쓰레드에서 strList->Strings[0]값이 가끔 비정상적인 값들이 들어오는 경우가 있습니다.
: :
: : 왜 이런 현상이 일어날까요???
: : 혹시 동기화 때문일까요???
: : 동기화는 전혀 하진 않지만 내용상 한쪽에선 리스트에 끝에 쓰고 한쪽에선 리스트의 첫번째를 지우는 기능인데 동기화가 필요한가요???
: :
: : 고수님들의 답변 부탁드립니다.
|