Pytania otagowane jako concurrency

W informatyce współbieżność jest właściwością systemów, w których można wykonać wiele obliczeń w nakładających się okresach. Obliczenia mogą być wykonywane na wielu rdzeniach w tym samym układzie, zapobiegawczo podzielonych czasowo wątkach na tym samym procesorze lub wykonywane na fizycznie oddzielonych procesorach.


7
Koordynowanie równoległego wykonywania w node.js
Model programowania oparty na zdarzeniach node.js sprawia, że ​​koordynacja przepływu programu jest nieco trudna. Proste sekwencyjne wykonywanie zostaje zamienione w zagnieżdżone wywołania zwrotne, co jest dość łatwe (choć zapisywanie jest nieco zawiłe). Ale co z równoległym wykonaniem? Załóżmy, że masz trzy zadania A, B, C, które mogą być wykonywane równolegle, …

3
Kiedy ConcurrentDictionary TryRemove zwróci wartość false
Czy zwróci fałsz tylko wtedy, gdy słownik nie zawiera wartości dla danego klucza, czy też zwróci fałsz z powodu warunków wyścigu wątków, tak jak inny wątek coś dodaje / aktualizuje? Pytanie w kodzie: ConcurrentDictionary<int, string> cd = new ConcurrentDictionary<int, string>(); // This might fail if another thread is adding with …
79 c#  .net  concurrency 

1
Do czego służą ogrodzenia pamięci w Javie?
Próbując zrozumieć, w jaki sposób SubmissionPublisher( kod źródłowy w Java SE 10, OpenJDK | docs ), nowa klasa dodana do Java SE w wersji 9, została zaimplementowana, natknąłem się na kilka wywołań API, VarHandlektórych wcześniej nie byłem świadomy: fullFence, acquireFence, releaseFence, loadLoadFenceI storeStoreFence. Po przeprowadzeniu pewnych badań, szczególnie w odniesieniu …

2
Java zatrzyma usługę modułu wykonującego, gdy jedno z jego przypisanych zadań zawiedzie z jakiegokolwiek powodu
Potrzebuję usługi, która uruchomi kilka zadań jednocześnie i w odstępie 1 sekundy przez 1 minutę. Jeśli jedno z zadań się nie powiedzie, chcę zatrzymać usługę i każde zadanie, które się z nią uruchomiło, z jakimś wskaźnikiem, że coś poszło nie tak, inaczej jeśli po minucie wszystko pójdzie dobrze, usługa zatrzyma …

2
Gwarancje Kotlin „zdarzają się wcześniej”
Czy karliny Kotlin dają jakieś gwarancje „zdarzy się przed”? Na przykład, czy w tym przypadku istnieje gwarancja „dzieje się przed” między zapisem mutableVara późniejszym odczytem (potencjalnie) innego wątku: suspend fun doSomething() { var mutableVar = 0 withContext(Dispatchers.IO) { mutableVar = 1 } System.out.println("value: $mutableVar") } Edytować: Być może dodatkowy przykład …

2
Co gwarantuje C ++ std :: atomic na poziomie programisty?
Wysłuchałem i przeczytałem kilka artykułów, rozmów i pytań o przepełnienie stosu std::atomici chciałbym mieć pewność, że dobrze to zrozumiałem. Ponieważ nadal jestem trochę mylony z linią pamięci podręcznej zapisuje widoczność z powodu możliwych opóźnień w protokołach koherencji pamięci podręcznej MESI (lub pochodnych), buforach pamięci, unieważnianiu kolejek i tak dalej. Przeczytałem, …

1
Czy wywoływanie współbieżności :: concurrent_vector :: push_back jest bezpieczne podczas iteracji po tym współbieżnym wektorze w innym wątku?
push_back , zaczynają , koniec opisane są jako równoczesne sejf w https://docs.microsoft.com/en-us/cpp/parallel/concrt/reference/concurrent-vector-class?view=vs-2019#push_back Jednak poniższy kod jest twierdzący. Prawdopodobnie dlatego, że element został dodany, ale jeszcze nie zainicjowany. struct MyData { explicit MyData() { memset(arr, 0xA5, sizeof arr); } std::uint8_t arr[1024]; }; struct MyVec { concurrency::concurrent_vector<MyData> v; }; auto vector_pushback(MyVec &vec) …

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.