Pytania otagowane jako thread-safety

Fragment kodu jest bezpieczny dla wątków, jeśli tylko manipuluje strukturami danych w sposób, który umożliwia spójne wykonywanie tego kodu przez wiele wątków. Kod może być bezpieczny wątkowo, warunkowo bezpieczny (wymagane wzajemne wykluczanie) lub niebezpieczny (może być bezpiecznie używany tylko przez jeden wątek).

3
Threadsafe vs re-entrant
Niedawno zadałem pytanie o tytule „Czy wątek malloc jest bezpieczny?” , aw środku zapytałem: „Czy Malloc jest ponownie wprowadzony?” Odniosłem wrażenie, że wszyscy ponownie wchodzący są bezpieczni dla wątków. Czy to założenie jest błędne?



4
Bezpieczeństwo użytkowania Thread.current [] w szynach
Ciągle otrzymuję sprzeczne opinie na temat praktyki przechowywania informacji w Thread.currenthashu (np. Current_user, bieżąca subdomena itp.). Technika ta została zaproponowana jako sposób na uproszczenie późniejszego przetwarzania w warstwie modelu (określanie zakresu zapytań, audyt itp.). Dlaczego moje zmienne wątku występują sporadycznie w Railsach? Alternatywa dla Thread.current w opakowaniu API dla Railsów …


14
Android - najlepszy i bezpieczny sposób na zatrzymanie wątku
Chcę wiedzieć, jaki jest najlepszy sposób na zatrzymanie wątku w systemie Android. Wiem, że mogę AsyncTaskzamiast tego użyć i że jest cancel()metoda. Muszę użyć Threads w mojej sytuacji. Oto jak używam Thread: Runnable runnable = new Runnable() { @Override public void run() { //doing some work } }; new Thread(runnable).start(); …

3
Program wielowątkowy utknął w trybie zoptymalizowanym, ale działa normalnie w -O0
Napisałem proste programy wielowątkowe w następujący sposób: static bool finished = false; int func() { size_t i = 0; while (!finished) ++i; return i; } int main() { auto result=std::async(std::launch::async, func); std::this_thread::sleep_for(std::chrono::seconds(1)); finished=true; std::cout<<"result ="<<result.get(); std::cout<<"\nmain thread id="<<std::this_thread::get_id()<<std::endl; } Zachowuje się normalnie w trybie debugowania w Visual Studio lub -O0w …


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.