private SocketHandler DequeueRequest(bool localOnly) {
Object sh = null;
if (_count > 0) {
lock (this) {
if (_localQueue.Count > 0) {
sh = _localQueue.Dequeue();
_count--;
}
else if (!localOnly && _externQueue.Count > 0) {
sh = _externQueue.Dequeue();
_count--;
}
}
}
return (SocketHandler)sh;
}