Udostępnij za pośrednictwem


Unikanie problemy z programami wielowątkowym

Jest kilka problemów, które mogą wystąpić w tworzenie, łączenie lub wykonywanie programu c wielowątkowym.Niektóre typowe problemy są opisane w poniższej tabeli.(Podobne dyskusji z punktu widzenia MFC, zobacz Multithreading: Programowanie porady.)

Problem

Prawdopodobna przyczyna

Pojawi się okno komunikatu wskazujące, że program spowodował naruszenie ochrony.

Wiele błędów programowania Win32 powodować naruszenie ochrony.Typową przyczyną naruszenia ochrony jest przypisanie pośrednie danych wskaźniki zerowe.To w programie, próba dostępu do pamięci, który nie należy do niej, dlatego wydaje się naruszenie ochrony.

Prostym sposobem wykrycia przyczyny naruszenie ochrony jest skompilować program debugowania, a następnie uruchom poprzez debugera w środowisku Visual C++.W przypadku wystąpienia błędu ochrony systemu Windows przekazuje sterowanie do debugera i kursora w wierszu, który spowodował problem.

Program generuje wiele błędów kompilacji i łącza.

Wiele potencjalnych problemów można wyeliminować przez ustawienie jednej z jego najwyższej wartości poziomu ostrzeżeń kompilatora i heeding komunikatów ostrzegawczych.Za pomocą poziom 3 lub opcje poziom ostrzegania poziom 4, można wykrywać konwersji danych niezamierzone, brak prototypy funkcji i stosowania funkcji nie ANSI.

Zobacz też

Koncepcje

Wielowątkowość c i Win32