Managed implementation of the blocks as defined in the Language Specification for Blocks. Even if the implementation strictly follows the Block Implementation Specification, it is restricted to global block for the moment.
The block bridging allow a delegate function or action to be marshalled as a native block. Its implementation points to a proxy invoker that will forward the native block invocation to the delegate function or action.
Currently, any delegate can be passed to create a block. For example:
|Delegate||Equivalent block signature|
|void (^)(T1, T2, T3)|
|TResult (^)(T1, T2)|
 Language Specification for Blocks (http://clang.llvm.org/docs/BlockLanguageSpec.txt)
 Block Implementation Specification (http://clang.llvm.org/docs/BlockImplementation.txt)
Initializes a new instance of theclass.
Gets the block invoker.
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
Releases unmanaged and - optionally - managed resources
Releases unmanaged resources and performs other cleanup operations before the(Overrides is reclaimed by garbage collection. Object.Finalize()()()().)
Serves as a hash function for a particular type.(Inherited from Object.)
Gets the Type of the current instance.(Inherited from Object.)
Gets the invoked delegate.
Creates a shallow copy of the current Object.(Inherited from Object.)
Gets the native pointer representing this block instance.
Returns a String that represents this instance.(Overrides Object.ToString()()()().)
- Available in Monobjc Bridge: 10.6 (For Mac OS X 10.6 and later)