3 ms·
You know how the first time you learned about tcp sockets you made a server that spawned a new thread to handle an incoming connection (or maybe not, people lea
by Blackthorn 7y ago
You know how the first time you learned about tcp sockets you made a server that spawned a new thread to handle an incoming connection (or maybe not, people learn differently nowadays).
With the fibers implementation you can just do that. It doesn't kill your performance, and you don't need to go to a painful async model just for performance reasons.
- m0zg 7y agoPretty much. You get to pretend inside your fibers that you're actually running threads. IIRC (it's been a while) you also get proper stack trace when something barfs, the importance of which cannot be overstated.
- ninkendo 7y agoWhat are they though? Is this a library for an existing language? A runtime scheduler like the one that does goroutines in Go? If it were open sourced, how would I use it?
- thedance 7y agoIt’s just a library that allows easier development of C++ servers in the synchronous, thread-per-requests style, similar to working in Go but a bajillion times better because it’s not in Go.
- Blackthorn 7y agoAll of the above, and more -- kernel enhancements. See the linked paper, they detail what they do for the kernel side at least.
- dkersten 7y ago> or maybe not, people learn differently nowadays If by “nowadays” you mean ~2000 when I first learned socket programming (using select!)? ;-)