מצב מתוסבך...
היי חברה. יש לי צרה קטנטנה שאני מנסה נכון לעכשיו להבין מה המקור שלה. יש לי מחלקה שיוצרת CriticalSection (שניים כאלו) ויוצרת ת'רד שהפרמטר שלו הוא מצביע this למחלקה שמכילה בתוכה את האובייקטים של ה-CriticalSections הללו. ברגע שהקוד של ה-ת'רד מתבצע הכל פועל מעולה חוץ מהקטע שבו אני מתחיל לעבוד איתם. אני קורא לפונקציה EnterCri... ושולח לה כפרמטר את האובייקט המתאים. אבל מה? היא גורמת ליצירה של שגיאה בתוכנית של כתיבה למקום לא מורשה (הפונקציית API מנסה לכתוב למקום שגוי/לא מורשה). יש לכם מושג או כיוון מה יכולה להיות הבעייה? אני מבצע Initialize... כהלכה ובודק שהאובייקטים נוצרו ושגם הת'רד מקבל אותם נכון אבל שוב ושוב התקלה הזו מתרחשת. באף מקום אחר בתוכנית אני לא עושה שימוש באובייקטים האלו לפני שאני יוצר את הת'רד או אחרי. שלכם, מוטי.
היי חברה. יש לי צרה קטנטנה שאני מנסה נכון לעכשיו להבין מה המקור שלה. יש לי מחלקה שיוצרת CriticalSection (שניים כאלו) ויוצרת ת'רד שהפרמטר שלו הוא מצביע this למחלקה שמכילה בתוכה את האובייקטים של ה-CriticalSections הללו. ברגע שהקוד של ה-ת'רד מתבצע הכל פועל מעולה חוץ מהקטע שבו אני מתחיל לעבוד איתם. אני קורא לפונקציה EnterCri... ושולח לה כפרמטר את האובייקט המתאים. אבל מה? היא גורמת ליצירה של שגיאה בתוכנית של כתיבה למקום לא מורשה (הפונקציית API מנסה לכתוב למקום שגוי/לא מורשה). יש לכם מושג או כיוון מה יכולה להיות הבעייה? אני מבצע Initialize... כהלכה ובודק שהאובייקטים נוצרו ושגם הת'רד מקבל אותם נכון אבל שוב ושוב התקלה הזו מתרחשת. באף מקום אחר בתוכנית אני לא עושה שימוש באובייקטים האלו לפני שאני יוצר את הת'רד או אחרי. שלכם, מוטי.