On 10/08/2014 07:52 AM, Ruslan Baratov wrote:
> Okay :) I just not sure that I understand "to pass to some other 
> process" goal correctly.

That was just an example of why one might want to drop management
of the lock by CMake without actually unlocking it.  Perhaps the
code is starting a daemon and passes off responsibility for the
unlock side to the daemon process.

> * we just need to `unlock` file so the other instance will use it:
> file(UNLOCK_FILE "/path/to/shared/file")
> # now anybody can do the lock

Yes.  We also need the locking API to return information about
whether we really acquired the lock.

> * we need other process to "inherit" the lock (what for?), i.e. move 
> ownership (?):
> file(LOCK_FILE "/path/to/shared/file")
> execute_process(${CMAKE_COMMAND} --take-ownership "/path/to/shared/file" 
> ...)
> # unlocked by execute_process

I think all we need there is a way to ask CMake to take over
responsibility for a lock that it did not originally create.
It can also be in the file() command.

Thanks,
-Brad

-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers

Reply via email to