|
TIdTCPServer로 서버를 만드려고 하는데, Synchronize부분부터 막히네요.
구글로 검색을 해보니 Indy10에서는 쓰레드에 직접 접근하는 것은 불가능하고, IdSync라는 것을 이용해야 한다고 하더라구요.
indy9:
Athread.Synchronize();
indy10:
uses idsync;
procedure TfmMain.TCPServerExecute(AContext: TIdContext);
begin Tidsync.SynchronizeMethod(IncrConnectioncount);
end;
procedure TfmMain.IncrConnectionCount;
begin inc(FConnectionCount);
end;
이렇게 나와 있던데 델파이 코드를 잘 몰라서 어떻게 빌더에 적용시킬지 잘 모르겠네요.
특히 SynchronizeMethod 함수 원형을 찾아보면
static void __fastcall SynchronizeMethod(TMetaClass* vmt, Classes::TThreadMethod AMethod);
라고 되어 있던데요, 왜 인수를 두 개 받으며 앞의 것은 뭘까요?
누가 간단한 샘플 소스 보여주실 분은 없나요ㅠ_ㅠ 한참을 뒤져도 자료가 없어서 모르겠어요.
|