A cooperative lightweight thread library for Java