AbortableEnumerator

Provides an abort mechanism to a coroutine. Wrap the call to the coroutine with this AbortableEnumerator, and call Abort when you want to abort it.

See this answer for usage example.