QLock Class Reference
The QLock class is a wrapper round a System V shared semaphore.
More...
#include <qlock_qws.h>
List of all member functions.
Public Members
QLock ( const QString & filename, char id, bool create = FALSE )
enum
Type { Read, Write }
Detailed Description
The QLock class is a wrapper round a System V shared semaphore.
It is used by Qt/Embedded for synchronizing access to the graphics
card and shared memory region between processes.
See also Input/Output and Networking and Qt/Embedded.
Member Type Documentation
QLock::Type
Member Function Documentation
QLock::QLock ( const QString & filename, char id, bool create = FALSE )
Creates a lock. filename is the file path of the Unix-domain
socket the Qt/Embedded client is using. id is the name of the
particular lock to be created on that socket. If create is TRUE
the lock is to be created (as the Qt/Embedded server does); if create is FALSE the lock should exist already (as the Qt/Embedded
client expects).
QLock::~QLock ()
Destroys a lock
bool QLock::isValid () const
Returns TRUE if the lock constructor was succesful; returns FALSE if
the lock could not be created or was not available to connect to.
void QLock::lock ( Type t )
Locks the semaphore with a lock of type t. Locks can either be
Read or Write. If a lock is Read, attempts to lock by other
processes as Read will succeed, Write attempts will block until the
lock is unlocked. If locked as Write, all attempts to lock by other
processes will block until the lock is unlocked. Locks are stacked:
i.e. a given QLock can be locked multiple times by the same
process without blocking, and will only be unlocked after a
corresponding number of unlock() calls.
bool QLock::locked () const
Returns TRUE if the lock is currently held by the current process;
otherwise returns FALSE.
void QLock::unlock ()
Unlocks the semaphore. If other processes were blocking waiting to lock()
the semaphore, one of them will wake up and succeed in lock()ing.
This file is part of the Qt toolkit.
Copyright © 1995-2002
Trolltech. All Rights Reserved.