-
Notifications
You must be signed in to change notification settings - Fork 2.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Poco::NamedEvent does not release System V semaphore on Linux #2971
Comments
This issue is stale because it has been open for 365 days with no activity. |
This issue was closed because it has been inactive for 60 days since being marked as stale. |
This issue is stale because it has been open for 365 days with no activity. |
matejk
added a commit
that referenced
this issue
Dec 18, 2023
matejk
added a commit
that referenced
this issue
Dec 18, 2023
matejk
added a commit
that referenced
this issue
Dec 18, 2023
matejk
added a commit
that referenced
this issue
Dec 22, 2023
matejk
added a commit
that referenced
this issue
Mar 9, 2024
matejk
added a commit
that referenced
this issue
Mar 26, 2024
matejk
added a commit
that referenced
this issue
Oct 3, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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);
...
The text was updated successfully, but these errors were encountered: