树状结构 Tree data structure in C#
摘要:delegate void TreeVisitor(T nodeData); class NTree { private T data; private LinkedList> children; public NTree(T data) { this.data = data; children = new LinkedLis...
阅读全文
posted @
2017-12-20 17:24
武胜-阿伟
阅读(440)
推荐(0)
wrap ConcurrentDictionary in BlockingCollection
摘要:ConcurrentDictionary> mailBoxes = new ConcurrentDictionary>(); int maxBoxes = 5; CancellationTokenSource cancelationTokenSource = new CancellationTokenSource(); CancellationT...
阅读全文
posted @
2017-12-15 15:39
武胜-阿伟
阅读(349)
推荐(0)
ConcurrentBag扩展 批量加入
摘要:public static void AddRange(this ConcurrentBag @this, IEnumerable toAdd) { foreach (var element in toAdd) { @this.Add(element); } }
阅读全文
posted @
2017-12-15 15:34
武胜-阿伟
阅读(894)
推荐(1)
Dictionary GetOrAdd
摘要:public static TValue GetOrAdd( this Dictionary dictionary, TKey key, Func valueFactory) { TValue value; if (!dictionary.TryGetValue(key, out value)) { value = valueFactory(ke...
阅读全文
posted @
2017-12-15 15:31
武胜-阿伟
阅读(869)
推荐(0)
ConcurrentDictionary AddOrUpdate
摘要:var sessionId = a.Session.SessionID.ToString(); userDic.AddOrUpdate( authUser.UserId, sessionId, (key, oldValue) => sessionId); static class Extension
阅读全文
posted @
2017-12-15 15:26
武胜-阿伟
阅读(6959)
推荐(0)
object pool
摘要:/// /// 对象池 /// /// public class ObjectPool { private readonly ConcurrentBag _buffer; private readonly Func _createFunc; private readonly Action _reset...
阅读全文
posted @
2017-12-15 11:29
武胜-阿伟
阅读(216)
推荐(0)