public function recv_async($timeout = null, $trans_id = null, $consume = true)
{
if (is_null($timeout)) {
$timeout = $this->timeout_sync;
}
if (is_null($trans_id)) {
$trans_id = str_repeat("", 16);
}
$this->send(\Erlang\term_to_binary(array(new \Erlang\OtpErlangAtom('recv_async'), $timeout, new \Erlang\OtpErlangBinary($trans_id), $consume)));
return $this->poll_request(null, false);
}