New resource count (potentially invalid at the moment caller will see it) is returned as the result.Then there is TryAllocate ??? a safer version of Allocate taking a timeout parameter (which may be set to INFINITE) and returning success/fail status as a function result.Finally, there is a Handle property exposing a handle which is signalled when resource count is 0 and unsignalled otherwise. TOm