+ class NodeObjectPool : ObjectPool<Node> {
+ protected override Node Creator ()
+ {
+ return new Node ();
+ }
+ }
+ static readonly NodeObjectPool pool = new NodeObjectPool ();
+
+ static Node ZeroOut (Node node)
+ {
+ node.Value = default(T);
+ node.Next = null;
+ return node;
+ }
+