Wielowątkowość to zdolność komputera lub programu do wykonywania pracy jednocześnie lub asynchronicznie poprzez wykorzystanie wielu współbieżnych strumieni wykonania (ogólnie nazywanych wątkami).
Mam skrypt PowerShell do przetwarzania wsadowego na kilku obrazach i chciałbym przeprowadzić równoległe przetwarzanie. Wydaje się, że Powershell ma pewne opcje przetwarzania w tle, takie jak start-job, wait-job itp., Ale jedynym dobrym źródłem, które znalazłem do wykonywania równoległej pracy, było napisanie tekstu skryptu i uruchomienie go ( wielowątkowość PowerShell ) …
Niedawno próbowałem uzyskać dostęp do pola tekstowego z wątku (innego niż wątek interfejsu użytkownika) i został zgłoszony wyjątek. Mówił coś o tym, że „kod nie jest bezpieczny dla wątków”, więc napisałem delegata (pomógł przykład z MSDN) i wywołałem go. Ale mimo to nie bardzo rozumiałem, dlaczego cały dodatkowy kod był …
Poniższy fragment kodu wykonuje dwa wątki, jeden to prosty licznik czasu rejestrujący co sekundę, drugi to nieskończona pętla, która wykonuje pozostałą operację: public class TestBlockingThread { private static final Logger LOGGER = LoggerFactory.getLogger(TestBlockingThread.class); public static final void main(String[] args) throws InterruptedException { Runnable task = () -> { int i …
Chcę uruchomić zadanie w wątku w tle. Nie chcę czekać na zakończenie zadań. W .net 3.5 zrobiłbym to: ThreadPool.QueueUserWorkItem(d => { DoSomething(); }); W .net 4 TPL jest sugerowanym sposobem. Typowy zalecany wzór, który widziałem, to: Task.Factory.StartNew(() => { DoSomething(); }); Jednak StartNew()metoda zwraca Taskobiekt, który implementuje IDisposable. Wydaje się, …
Utknąłem w problemie od wielu godzin i po przeczytaniu wszystkiego na ten temat w stackoverflow (i zastosowaniu wszystkich znalezionych porad), teraz oficjalnie potrzebuję pomocy. ; o) Oto kontekst: W moim projekcie iPhone'a muszę zaimportować dane w tle i wstawić je w kontekście obiektu zarządzanego. Postępując zgodnie z poradami tutaj, oto …
Czy istnieje sposób, aby sprawdzić, czy bieżący wątek jest głównym wątkiem w Objective-C? Chcę zrobić coś takiego. - (void)someMethod { if (IS_THIS_MAIN_THREAD?) { NSLog(@"ok. this is main thread."); } else { NSLog(@"don't call this method from other thread!"); } }
Wiem, że użycie synchronizesłowa kluczowego przed metodą powoduje synchronizację z tym obiektem. Oznacza to, że zostaną zsynchronizowane 2 wątki z tym samym wystąpieniem obiektu. Ponieważ jednak synchronizacja jest na poziomie obiektu, 2 wątki z różnymi instancjami obiektu nie zostaną zsynchronizowane. Jeśli w klasie Java mamy zmienną statyczną, która jest wywoływana …
Jedną z pierwszych rzeczy, których nauczyłem się o programowaniu Java EE, jest to, że nie powinienem tworzyć własnych wątków w kontenerze Java EE. Ale kiedy o tym myślę, nie znam powodu. Czy możesz jasno wyjaśnić, dlaczego jest to odradzane? Jestem pewien, że większość aplikacji korporacyjnych wymaga pewnego rodzaju zadań asynchronicznych, …
Czy poniższy kod spowoduje zakleszczenie przy użyciu języka C # na platformie .NET? class MyClass { private object lockObj = new object(); public void Foo() { lock(lockObj) { Bar(); } } public void Bar() { lock(lockObj) { // Do something } } }
Co się dzieje w systemie Linux, gdy program (który może mieć wiele wątków) odbiera sygnał, taki jak SIGTERM lub SIGHUP? Który wątek przechwytuje sygnał? Czy wiele wątków może otrzymać ten sam sygnał? Czy istnieje specjalny wątek poświęcony wyłącznie obsłudze sygnałów? Jeśli nie, co dzieje się wewnątrz wątku, który ma obsłużyć …
Mogłem o to zapytać w podobnym kontekście, ale nie mogłem znaleźć odpowiedzi po około 20 minutach poszukiwań, więc zapytam. Napisałem skrypt w Pythonie (powiedzmy: scriptA.py) i skrypt (powiedzmy scriptB.py) W skrypcie B chcę wywołać skryptA wiele razy z różnymi argumentami, za każdym razem uruchomienie trwa około godziny (jest to ogromny …
Przeszukałem Internet pod kątem niektórych szczegółów technicznych dotyczących blokowania we / wy i nieblokujących operacji we / wy i znalazłem kilka osób, które twierdziły, że nieblokujące we / wy będą szybsze niż blokowanie we / wy. Na przykład w tym dokumencie . Jeśli używam blokowania I / O, to oczywiście …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.