update multi threading