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