ホームページ > バックエンド開発 > Golang > Promise内からエラーを返すにはどうすればよいですか?

Promise内からエラーを返すにはどうすればよいですか?

WBOY
リリース: 2024-02-09 17:03:08
転載
990 人が閲覧しました

Promise内からエラーを返すにはどうすればよいですか?

コードを作成するとき、起こり得るエラー状況に対処する必要があることがよくあります。ただし、関数またはメソッドが呼び出されたときに正しく処理できるように、関数またはメソッド内でエラーを返す必要がある場合があります。 PHP ではこれを実現する方法がいくつかあります。この記事では、開発者がエラー状況に適切に対処できるように、Promise 内からエラーを返す方法について説明します。

質問内容

kgo.Produce(ドキュメントはこちら)でエラーが発生した場合に欲しい関数(sendall)があります。 エラーを返します。ループを停止してエラーを返すようにするにはどうすればよいですか?

func (k *buffer) sendAll() error {
    for _, record := range k.buffer {
        kgo.Produce(ctx, &record, func(r *kgo.Record, err error) {
            if err != nil {
                fmt.Printf("record had a produce error: %v\n", err)
                
                // How do I return an error here and exit sendAll function?
                
            }
        })
    }
    return nil
}
ログイン後にコピー

回避策

「ローカル」変数をチェックするだけでこの問題を回避できるようです。

リーリー

以上がPromise内からエラーを返すにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:stackoverflow.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート