simple coroutine implementation under ONLY LINUX or WINDOWS