multi threads can control each other