[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
GSLazyLock initialization fails
From: |
Wim Oudshoorn |
Subject: |
GSLazyLock initialization fails |
Date: |
Wed, 10 Mar 2004 09:38:54 +0100 |
User-agent: |
Gnus/5.1002 (Gnus v5.10.2) Emacs/21.3.50 (darwin) |
I have reported this bug on savannnah as well: 8085
However I think the automatic mailing to the bug list fails
so I repost it here.
If you create a GSLazyLock in a "willBecomeMultiThreaded"
notification handler, the GSLazyLock is NOT initialized correctly. It
will stay a GSLazyLock and never change into a real NSLock. Reason is
that the GSLazyLock will never receive the "willBecomeMultithreaded"
notification because it has just been sent. Also the GSLazyLock does
not know it should be initialized as being Multitythreaded, because
that flag has not been set yet.
You could argue that you should not use a GSLazyLock unless you know
what you are doing, however "base" uses the GSLazyLock and it is very
easy to indirecty create such a lock. One example being, setting up
an NSConnection.
Attached program demonstrates the problem.
Wim Oudshoorn.
MTTest.m
Description: Test program to show GSLazyLock problem
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- GSLazyLock initialization fails,
Wim Oudshoorn <=