Вы не даете много контекста тому, что Вы действительно делаете, но возможно Queue
мог использоваться вместо явного цикла активного ожидания? В противном случае я принял бы sleep
, будет предпочтительно, поскольку я полагаю, что это использует меньше ЦП (как другие уже отметили).
[Отредактированный согласно дополнительной информации в комментарии ниже.]
, Возможно, это очевидно, но так или иначе, что Вы могли , делают в случае, где Вы читаете, информация от блокирования сокетов состоит в том, чтобы иметь один поток, считанный из сокета и сообщения соответственно форматированные сообщения в Queue
, и затем иметь остальную часть Ваших потоков "рабочего", читающих из той очереди; рабочие затем заблокируются при чтении из очереди без потребности ни в pass
, ни в sleep
.
Это уравнение (гипер) плоскости с использованием точки и вектора нормали.
Думайте о плоскости как о множестве точек P, в которых вектор, проходящий от P0 до P, перпендикулярен нормали.
Ознакомьтесь с этими страницами для объяснения:
http://mathworld.wolfram.com/Plane.html
http://en.wikipedia.org/wiki/Plane_%28geometry%29#Definition_with_a_point_and_a_normal_vector
Представьте себе плоскость в трехмерной системе координат. Чтобы описать это, вам нужен вектор нормали N этой плоскости и расстояние D от плоскости до начала координат. Для простоты предположим, что вектор нормали имеет единичную длину. Тогда уравнение для этой плоскости будет xN - D = 0.
Пояснение: xN можно визуализировать как проекцию x на вектор нормали N. Результатом будет длина вектора x, параллельного N. Если эта длина равна D , точка x лежит на плоскости.