something to maybe evaluate one day: eventfd is less problematic to use and faster to write/read to than regular thread pipes