internal bool Init(uint pool_size)
{
pool_size_ = pool_size;
free_size_ = pool_size_;
data_pool_ = new User[pool_size];
for (uint i = 0; i < pool_size; ++i) {
data_pool_[i] = new User();
data_pool_[i].LocalID = i;
data_pool_[i].IsIdle = true;
}
this_lock_ = new object();
return true;
}