Topics   All   MacOS (Only)   Windows (Only)   Linux (Only, Not)   iOS (Only, Not)  
Components   Crossplatform Mac & Win   Server   Client   Old   Guides   Examples
New in version: 9.0   9.1   9.2   9.3   9.4   9.5   10.0   10.1   10.2   10.3    Statistic  

Mutex.Create

Creates a new mutex with given name.

Component Version macOS Windows Server FileMaker Cloud FileMaker iOS SDK
Mutex 10.2 Yes Yes Yes Yes Yes
MBS( "Mutex.Create"; Name )   More

Parameters

Parameter Description Example value
Name The name to use for the mutex.
Name should be a simple text, but unique, so we recommend reverse domain notation.
The name should not contain a slash.
"test"

Result

Returns OK or error.

Description

Creates a new mutex with given name.
If mutex exists already, we open it. The mutex lives until the last application closed it.
Please call Mutex.Free later.

If name matches the name of an existing event, semaphore, waitable timer, job, or file-mapping object, the function fails.
You can open the same mutex twice and get different reference numbers from the plugin.

Examples

Create a mutex

MBS( "Mutex.Create"; "com.monkeybreadsoftware.test" )

Create the mutex and use it:

# create a mutex
Set Variable [ $mutex ; Value: MBS( "Mutex.Create"; "de.monkeybreadsoftware.test" ) ]
# lock it
Set Variable [ $r ; Value: MBS( "Mutex.TryLock"; $Mutex ) ]
If [ $r = 1 ]
    # do something
    #
    # finally unlock
    Set Variable [ $r ; Value: MBS( "Mutex.Unlock"; $Mutex ) ]
End If
# free it mutex
Set Variable [ $r ; Value: MBS( "Mutex.Free"; $Mutex ) ]

See also

Blog Entries

Created 5th April 2020, last changed 5th April 2020


Msgbox   -   Mutex.Free

Feedback: Report problem or ask question.




Links
MBS Xojo tutorial videos