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.