Active threads: towards efficient fine-grained parallelism in object-oriented systems