multi threaded client