publisher threaded implementation