Мы НЕ должны игнорировать предупреждающее сообщение, это затрудняет отслеживание ошибок / ошибок в нашем приложении в будущем.Оставить функцию заполнителя лучше, но она должна выглядеть следующим образом:
handle_cast(_Msg, State) ->
{noreply, State}.
По умолчанию эта функция не может передавать данные вызывающей стороне, поэтому вы можете избежать сбоя приложения, когда вы или ваши коллегииспользуйте gen_sever:cast/2
.
У меня не было конкретного способа написать gen_sever
.В большом проекте, над которым я работал, они просто оставляют заполнитель, как показано ниже, для использования в будущем.Их не волнует, используются ли функции обратного вызова или нет.Мы должны позаботиться о том, используется ли обычная функция или нет, а не функции обратного вызова.
handle_call(_Request, _From, State) ->
{reply, ok, State}.
handle_cast(_Msg, State) ->
{noreply, State}.
handle_info(_Info, State) ->
{noreply, State}.
terminate(_Reason, _State) ->
ok.