recorder: use the thread
finish the part of record