Comment by layer8

Comment by layer8 19 hours ago

4 replies

The problem is when C calls expect to be on a particular thread. Either the main event thread, in a GUI context, or the same thread as some related previous call.

ori_b 17 hours ago

The problem is that C expects to have enough stack to put stuff there, but green threads allocate small stacks to reduce (virtual) memory use.

  • layer8 16 hours ago

    That’s not a problem when a dedicated thread pool is used as mentioned by GP. However they don’t solve the thread affinity issue.

    • ori_b 7 hours ago

      That's the reason for the thread pool, and the resulting thread affinity issue.

      • layer8 2 hours ago

        This seems to assume that the same green thread will always run on the same native thread, which I don’t think is universally the case.