No threads
2007-06-19 Filed in: programming
A mini-rant about threads... let me just say that I'm
running away from them. IMO, they
add nothing a well-designed asynchronous or
multi-processing approach can't handle (other
than for specialized applications such as 3D
rendering). And the risks are substantial:
No thanks - I'll be sticking to async I/O (one of Tcl's strengths) and pipe- / socket- / mmap- / shmem-connected processes.
- chances of a coding mistake are way too high
- complete testing of race conditions is next to impossible
- full code review in OSS projects with plugins/extensions is not feasible
- failures are not repeatable, i.e. essentially non-deterministic
- one weak link can bring down the application
No thanks - I'll be sticking to async I/O (one of Tcl's strengths) and pipe- / socket- / mmap- / shmem-connected processes.