Наименьшее возможное значение времени ожидания составляет 0 миллисекунд . То есть вы ожидаете, что сообщение уже будет в очереди сообщений, а если это не так, вы не хотите его ждать.
Я попытался установить для тайм-аута отрицательное значение. Я ожидал, что это даст ошибку компиляции, но это не так. Вместо этого я получил ошибку времени выполнения:
** (ErlangError) Erlang error: :timeout_value
Это имеет смысл в некотором смысле, поскольку значение времени ожидания не обязательно должно быть константой: вы можете использовать значение переменной в качестве времени ожидания.