private void Send(Task task) { lock (_connectionLock) { var corrId = Guid.NewGuid(); _items.TryAdd(corrId, new WorkerItem(corrId, task)); _connection.EnqueueSend(task.CreateNetworkPackage(corrId).AsByteArray()); } }