عرض کردم که برای حل مشکل باید نمونه خروجی رو قرار بدید، مواردی که گفته شد برای جلوگیری از مشکلات دیگه ست
سورس دستور WriteLog رو قرار بدید، احتمالا مشکل در این دستور ایجاد میشه
از این دستور در چند ترد به صورت همزمان استفاده کردید، بنابراین باید Synchronization رو رعایت کنید، مثلا باید از CriticalSection استفاده کنید
راه درست برای نوشتن Log اینه که یک صف ( مثلا یک StringList ) از خطوطی که باید در لاگ نوشته بشه داشته باشید و هر ترد فقط متن مورد نظرش رو در داخل این صف قرار بده و در یک ترد جداگانه این لیست پیمایش بشه و در فایل Log نوشته بشه. برای ثبت متن Log از درون هر ترد باز باید از CriticalSection استفاده کنید یا اینکه از کلاسهای Thread-Safe مثل TThreadList استفاده کنید که مخصوص همین کار ایجاد شدن و به صورت داخلی Synchronization رو مدیریت می کنن





پاسخ با نقل قول