stm
Kiedy / dlaczego używać MVar nad TVar
Uważam, że TVar jest dość łatwy w obsłudze, chociaż mvar wydaje się trochę prostszy, podczas gdy TVar jest trochę bardziej fu ... TVar? Przypuszczam, że zawsze, gdy nie potrzebuję aktualizacji transakcyjnej, mogę użyć MVar, ale w jaki sposób mi to służy?
Haskell fast concurrent queue
Problem
Halo! Piszę bibliotekę logowania i Chciałbym stworzyć logger, który będzie działał w osobnym wątku, podczas gdy ws ... ze wszystkich wersji - czy ktoś może powiedzieć więcej, Dlaczego mamy takie wyniki i czy w każdym razie możemy zrobić lepiej?
Różnica między TVar i TMVar
Widziałem {[0] } jest prostym kontenerem, podczas gdy {[1] } jest taki sam jak MVar, co oznacza, że ma blokadę itp., ale wewn ... użyć, jeśli, powiedzmy, masz typ [Handle] listę uchwytów gniazd, których chcesz użyć między wątkami wykonanymi przez forkIO?
Jak zaimplementować pamięć transakcyjną oprogramowania?
Jeśli chodzi o rzeczywiste instrukcje atomowe niskiego poziomu i ogrodzenia pamięci (zakładam, że są używane), jak zaimplemen ... clobbered(a więc na szczęście czasami dwa wątki mogą wykonać tę samą sekcję krytyczną jednocześnie bez potrzeby wycofywania)?