Perhaps you could use a pool of application threads as is done with the kernel threads for the low-priority work queue. So you could have a small number of threads that service all tasks. When a user-space thread is needed, it could be removed from the pool and be assigned to the task to run the event. When the event processing completes, the thread returned to the pool until it is again needed. Tasks could wait for availability if there are no available threads in the pool.Nevermind! This would not work in KERNEL mode. In that case, each task (now better called processes) have there own separate protected address enviroments and threads could never be shared across processes. It would work fine in FLAT and PROTECTED modes where all tasks share the same address space.
- limitation in SIGEV_THREAD? Matias N.
- Re: limitation in SIGEV_THREAD? Gregory Nutt
- Re: limitation in SIGEV_THREAD? Matias N.
- Re: limitation in SIGEV_THREAD? Xiang Xiao
- Re: limitation in SIGEV_THREAD? Matias N.
- Re: limitation in SIGEV_THREAD? Gregory Nutt
- Re: limitation in SIGEV_THREAD? Matias N.
- RE: limitation in SIGEV_THREAD? Xiang Xiao
- Re: limitation in SIGEV_THREAD? Gregory Nutt
- Re: limitation in SIGEV_THREAD? Gregory Nutt
- Re: limitation in SIGEV_THREAD? Matias N.
- Re: limitation in SIGEV_THREAD? Gregory Nutt
- Re: limitation in SIGEV_THREAD? Brennan Ashton
- Re: limitation in SIGEV_THREAD? Matias N.
- Re: limitation in SIGEV_THREAD? Brennan Ashton
- Re: limitation in SIGEV_THREAD? Matias N.
- Re: limitation in SIGEV_THREAD? Gregory Nutt
- Re: limitation in SIGEV_THREAD? Brennan Ashton