If I was designing a new system right now I would use the half-async, half-sync pattern. If I was going to retrofit TS, I would use the current system for the half-async part and add blocking sync interfaces for the iocore and a transaction thread pool. When TS was first designed we considered user threads, but we knew we could get the event driven system to work fast and portably, otherwise we might have gone that route. Knowing what I know now I am very glad we didn't.
- Threads Fibers Events and Design Patterns John Plevyak
- RE: Threads Fibers Events and Design Patterns John Plevyak