update use multi thread and ten times fast