Starts block and returns its task handle.
Accepts a non-null zero-argument Unit function value, including a lambda with captures.