if no other data than a worker counter a simple pipe with Pool_handling sending the counter when it changes
if more data to be shared/inspected by collection child shared memory seems to be the solution
Two solutions :
1. if no other data than a worker counter a simple pipe with Pool_handling sending the counter when it changes
2. if more data to be shared/inspected by collection child shared memory seems to be the solution
yannweb
додав(ла) до BETA version етапу 4 роки тому
The shared memory solution is the more extensible one. But it implies synchronization mechanism. The pool handling proc can update shared memory at each loop, and the collection process can read them using a POSIX timer.
An elegant one should have been to make collection child to SIGSTOP the pool handler pro, to read the data and then, to SIGCONT the pool handler proc. But in this case the pool handler loop will have to deal with EINTR failures….
A simplest solution is to use a semaphore and locking the data when accessing them.
The shared memory solution is the more extensible one. But it implies synchronization mechanism. The pool handling proc can update shared memory at each loop, and the collection process can read them using a POSIX timer.
An elegant one should have been to make collection child to SIGSTOP the pool handler pro, to read the data and then, to SIGCONT the pool handler proc. But in this case the pool handler loop will have to deal with EINTR failures....
A simplest solution is to use a semaphore and locking the data when accessing them.
Two solutions :
if no other data than a worker counter a simple pipe with Pool_handling sending the counter when it changes
if more data to be shared/inspected by collection child shared memory seems to be the solution
The shared memory solution is the more extensible one. But it implies synchronization mechanism. The pool handling proc can update shared memory at each loop, and the collection process can read them using a POSIX timer.
An elegant one should have been to make collection child to SIGSTOP the pool handler pro, to read the data and then, to SIGCONT the pool handler proc. But in this case the pool handler loop will have to deal with EINTR failures….
A simplest solution is to use a semaphore and locking the data when accessing them.
closed by b3af92459e
Something is not working duplicate
This issue or pull request already exists enhancement
New feature help wanted
Need some help invalid
Something is wrong question
More information is needed Tests
Tests using check or unittests wontfix
This won't be fixed _core
About PyFCGI internal components _deployment _libpyfcgi
About PyFCGI Python components
Термін виконання не встановлений.
Видалення гілки НЕЗВОРОТНЕ. Дію не можна скасувати. Продовжити?