use std::sync mutex instead of rustrt