FWIW I have pushed this to github; see
https://github.com/alvherre/postgres/compare/bgworker
It's also attached.
The UnBlockSig stuff is the main stumbling block as I see it because it
precludes compilation on Windows. Maybe we should fix that by providing
another function that the module is to call after initialization is done
and before it gets ready to work ... but having a function that only
calls PG_SETMASK() feels somewhat useless to me; and I don't see what
else we could do in there.
Maybe I could also add a stop time enum, with a single value, so that in
the future we can add more to tweak things without having to change
RegisterBackgroundWorker's signature.
--
Álvaro Herrera http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services