Repro steps: create array of e.g. 256 Poco::NamedEvent instances. You'll get an error e.g.
System exception : cannot create named mutex ... semget() failed, errno=28
The Linux system allows up to 128 semaphore Ids and Poco::NamedEvent does not release semaphore id of the destructed Poco::NamedEvent instance.
I think in the NamedEvent_UNIX.cpp NamedEventImpl::~NamedEventImpl() there should be a call:
#if (POCO_OS == POCO_OS_LINUX)
// remove semaphores
semctl (semid, 0, IPC_RMID);
...