records of learning multithread programming