Open ColourfulBlack opened 1 year ago
Agreed - this library is completely useless on macOS.
Maybe it hasn't been tested on this platform.
Thanks for reporting. This was tested on MacOS when it was developed. However, something has changed in the OS and its support of sem_open
. Either of you have bandwidth to help and debug? I updated the code to .NET 8 but can't figure out what is up with sem_open. Sees like an arm
based issue.
Hum...🧐 I see, so it could be some system related issue. And sorry that I couldn't help recently. I will see what I can do when I have some spare time.
I've identified one cause: sem_open fails immediately if the semaphore name is more than 10 characters. With a short name, it gets further, but even then, it doesn't seem to allow two processes to work with the same semaphore.
Also, it seems that sem_open works only on the default thread - this might be a macOS limitation.
Problem description
At first, I import
Cloudtoid.Interprocess
to my ASP.NET WEB API backend application, every time it runusing var publisher = factory.CreatePublisher(options);
it got into the exception below:I move the code into a vary simple project which just contains a single
Program.cs
:It got into the same exception.
Reproduction
I pushed that simple project to this GitHub repository
Additional information
Cloudtoid.Interprocess version
1.0.175
My OS information:
My dotnet information: