[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Possible issue with mutexes

From: Herwig Hochleitner
Subject: Re: Possible issue with mutexes
Date: Wed, 10 Apr 2019 05:11:36 +0200

On 4/10/19 4:57 AM, Herwig Hochleitner wrote:

I've recently created a semaphore type, based on mutex and condition vars, for controlling parallelism in an elisp processor.

The project went well, so far, but now that I attempted to pull out this semaphore implementation and create a test for it, I've noticed behavior, that leads me to believe, that emacs' thread and mutex guarantees might not hold in all cases.

When running the [test case](https://github.com/webnf/semaphore.el/blob/306d5a84b99526213c3a7d367f8d8041961ea52a/test/emacs-semaphore-test.el), you would expect `test/semaphore/active-count` to be 0 at the end of a run, right? For me, it's wildly inconsistent at the end of a run and seems to become desynchronized among worker threads. In this [example run](https://hastebin.com/wigiwizabi.log) from my machine, it happens to settle at 10.

Am I doing this wrong, somehow?

If not, could somebody help me file a report? First post on this ML ...

kind regards

Argh .. found the bug in my code.

Sorry for the spam!

Since we are here already, let me ask you about this other issue, I had:

Waiting on a condition var or joining a thread on the main thread can freeze emacs totally dead. Like kill -9 dead.

Is this a known issue or should I investigate further?

reply via email to

[Prev in Thread] Current Thread [Next in Thread]