unsigned ctl_bus_lock_ex(CTL_PARALLEL_BUS_t *self,
                         CTL_TIMEOUT_t type,
                         CTL_TIME_t time);

ctl_bus_lock_ex acquires the bus lock mutex of the bus self using the timeout specified with type and time. If there is no mutex associated with the bus self, ctl_bus_lock_ex returns immediately indicating success.

ctl_bus_lock_ex returns a non-zero value if the mutex is acquired within the timeout specification and zero if it is not.

All successful locks of the bus by ctl_bus_lock_ex must be paired with a call to ctl_bus_unlock to release the lock.

See Also

ctl_bus_unlock_bus, ctl_bus_lock