.NET のタイムアウト
Functions Framework for .NET は、関数のタイムアウトを示すためにキャンセル トークンを使用します。
関数の実装方法に応じて、キャンセル トークンを取得できます。
IHttpFunction
インターフェースを実装する HTTP 関数の場合は、HttpContext.RequestAborted
プロパティからキャンセル トークンを取得します。ICloudEventFunction
、ICloudEventFunction<TData>
、またはITypedFunction<TRequest, TResponse>
インターフェースを実装するイベント ドリブン関数の場合、キャンセル トークンはHandleAsync
メソッドに渡されます。
キャンセル トークンは、関数のタイムアウトによるリクエストの終了を処理するために使用します。呼び出す非同期メソッドにキャンセル トークンを渡し、関数コードが使用されない処理を実行するのではなく、正常に中止されるようにします。
関数で時間のかかる同期コードを使用していて、同等の非同期コードがない場合は、CancellationToken.ThrowIfCancellationRequested
メソッドを定期的に呼び出します(同期ループの反復処理ごとに呼び出すなど)。