There are multiple sources calling a particular method, but I would like to ensure that it is called exactly once (per object)
I would like to use syntax like
dispatch_once() executes its block once and only once for the lifetime of an application. Here's the GCD reference link. Since you mention that you want [self _finishOnce] to happen once per object, you should not be using dispatch_once()
dispatch_once()
[self _finishOnce]