multithreaded character update