private void Recycle()
{
if (!this.fromPool)
{
return;
}
this.state = AwaiterStatus.Pending;
this.callback = null;
queue.Enqueue(this);
// 太多了,回收一下
if (queue.Count > 1000)
{
queue.Clear();
}
}
当池中对象个数超过一千就把整个池清空了。如果是不清空池,只是超过阈值时不会回收到池里,会不会更好?因为一千个ETTask对象的内存也没多少。