update (thread)