Threads are bad?
Előrelátóan a Flame kategóriába helyeztem... :)
Suckit blogján található a következő bejegyzés:
Threads were invented as a very bad workaround for slow context
switching on ancient hardware using primitive OS versions.
The people who invented them said they were bad.
Any teacher or programmer who says otherwise is ignorant.
There's a paper from Berkeley showing how a threaded program can
never be fully debugged and should be presumed to be broken,
probably fatally broken.geoff steckel
Ez véleményem szerint kicsit túl általános kijelentés. Nem látom, hogy egy olyan threadelt program, ahol a threadek csak jól meghatározott, threadsafe interfészen (pl. threadsafe queue-k) keresztül kommunikálnak, miért nem debuggolható teljesen, és miért ne lehetne akár formálisan is bizonyítani a helyes működést.
A multiprocessz programoknak természetesen sok előnye van robusztusság szempontjából, de a kommunikációnak mindig lesz overheadje a threadekhez képest. Itt nem csak a context-switch-re gondolok, hanem arra, hogy komplex adatok átadásánál szerializálni kell a küldéshez. Az a felhasználástól függ, hogy ez az overhead elfogadható-e, vagy nem.
Nektek mi a véleményetek?
- Tovább (Threads are bad?)
- 2309 megtekintés