아래코드 인데요. 이전에는 정상적으로 썼던것으로 기억하는데..
IO 103 ERROR 가 나옵니다.
쓰레드에서 사용해서 파일에 병목이 생기는것은 아니겠지요?
좀더 고급적으로 하는 방법이 없을까요?
try
logFileName := MakeLogFileName;
AssignFile(f, LogFilename);
{$I-}
if not SysUtils.FileExists(logFileName) then
ReWrite(f)
else
Append(f);
{$I+}
if IOResult = 0 then
begin
WriteLn(f, sMsg);
// Flush(f); <- 이것때문에 그런건가요?
end;
finally
CloseFile(f);
end;
================================
부분을 아래와 같이 수정했는데요.
혹시 문제가 생길지요?
IOResult 가 실패하면 CloseFile에서도 에러가 걸리지 않을런지요?
iFile := IOResult;
if iFile = 0 then
begin
WriteLn(f, sMsg);
Flush(f);
end;
finally
if iFile = 0 then
CloseFile(f);
end;