Azure Abort Controller client library for JavaScript - version 2.2.0

PaketAbortSignalLike, @azure/abort-controllerAbortController ile çalışmayı kolaylaştıran arayüz ve AbortError sınıflar sağlar; AbortSignal bu sınıflar modern JavaScript platformlarına entegre edilmiştir.

Genel olarak JavaScript için Azure SDK müşterilerinin bu kütüphaneyi kullanmasına gerek yoktur. Bunun yerine, AbortController platformları tarafından sağlanan AbortSignal ve iptal sinyallerini Azure SDK işlemlerine iletirler.

Önemli bağlantılar:

Başlangıç Yapmak

Kurulum

Bu kitaplığı npm kullanarak aşağıdaki gibi kurun

npm install @azure/abort-controller

Önemli Kavramlar

AbortController Bir ' oluşturmak AbortSignal için kullanılır, ardından Azure SDK işlemlerine iletilerek bekleyen işleri iptal eder. BunlaraAbortSignal, bir instansiyelenmiş AbortControllerbir cihazdan mülk signal üzerinden erişilebilir. An AbortSignal ayrıca doğrudan statik bir yöntemden de geri dönebilir, örneğin AbortSignal.timeout(100). bu 100 milisaniye sonra iptal edilir.

Examples

Aşağıdaki örnekler, bir doAsyncWork fonksiyonun bir özellik torbası alan bir fonksiyon olduğunu varsayır; bunlardan biri de iptal sinyali olabilir.

Örnek 1 - temel kullanım

async function doAsyncWork(options: { abortSignal: AbortSignal }): Promise<void> {
  if (options.abortSignal.aborted) {
    return;
  }

  // do async work
}

const controller = new AbortController();
doAsyncWork({ abortSignal: controller.signal });

// at some point later
controller.abort();

Örnek 2 - Zaman aşımıyla iptal etme

async function doAsyncWork(options: { abortSignal: AbortSignal }): Promise<void> {
  if (options.abortSignal.aborted) {
    return;
  }

  // do async work
}

const signal = AbortSignal.timeout(1000);
doAsyncWork({ abortSignal: signal });

Sonraki Adımlar

npm run testyürüterek testleri yerel olarak derleyebilir ve çalıştırabilirsiniz. Genel sınıfların gelişmiş kullanımını ve davranışını görmek için test klasörünü keşfedin.

Sorun giderme

Bu kütüphaneyi kullanırken sorun yaşarsanız, lütfen issue dosyasında yazmaktan çekinmeyin.

Contributing

Bu kitaplığa katkıda bulunmak istiyorsanız kodu oluşturma ve test etme hakkında daha fazla bilgi edinmek için lütfen katkıda bulunma kılavuzu okuyun.