How about letting the user create the threads (of course, the 'hard parts' like variable/function locking and handling done by engine) so user could create his/her own system for making multithreaded games?
Sounds and is tricky and hard.. but suggestion in the end ^^