Re: Suggestions for using MP Mutex during Action phase of build

Bill Deegan <[email protected]>
Newsgroups gmane.comp.programming.tools.scons.user
Message-ID <CAEyG4CH--DgGgD9MV8z2AxZXto08uBbkc5Fn2T=-HLp-RbhNwQ@mail.gmail.com>
Greetings,

You should probably be using SideEffect() if you're trying to prevent
mutual access to a file.

-Bill

On Fri, Jan 29, 2021 at 8:14 AM Manohar Reddy <[email protected]>
wrote:

> Dear Scons Community users,
>
> In SCons, we have support for a multi-process mutex that can be acquired
> by each build variant to coordinate writing to a shared file. The mutex is
> implemented through two methods:
>
> env.AcquireMPMutex()
> env.ReleaseMPMutex()
>
> Example usage:
>
> env.AcquireMPMutex("foo_file")
> if not os.exists("foo.file"):
>     env.FooBuilder("foo.file", "foo.source")
> env.ReleaseMPMutex("foo_file")
>
> But, this is currently not working for the action phase of the build.  In
> the example above, the call to env.FooBuilder() is protected by the mutex,
> but this only queues up the action for SCons to perform later, and by the
> time SCons executes this action, the mutex will have already been released,
> so the actual action is not being protected.
>
> Can someone guide us on any alternative approach where the pre-action and
> post-action are performed right before and after the execution of the
> action?
>
> Thanks
> Manohar
>
> _______________________________________________
> Scons-users mailing list
> [email protected]
> https://pairlist4.pair.net/mailman/listinfo/scons-users
>

_______________________________________________
Scons-users mailing list
[email protected]
https://pairlist4.pair.net/mailman/listinfo/scons-users
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.