Sunucu İşlem Sürecinin Zarifçe Kapatılması

Bu sayfa, signals kullanarak çalışan bir sunucu işlem sürecinin nasıl zarifçe kapatılacağını tanıtır.

Sunucu işlemini Server.Run(Handler) kullanarak başlattığınızda, gelen sinyalleri engelleyip bekler.

Çalışan bir programa gönderilebilecek iki sinyal türü vardır ve bunlar işlemi zarifçe kapatmak için kullanılır.

  • TSTP: Bu sinyal, Server'ın yeni görevleri işlemeyi durdurmasını sağlar.
  • TERM veya INT: Bu sinyal, Server'ın sonlandırılmasını (yani kapatılmasını) sağlar.

Önerilen olarak önce TSTP sinyali gönderilmesi yeni görevleri işlemeyi durdurmak ve ardından PROGRAMI sonlandırmak için TERM sinyali gönderilmeden önce devam eden tüm görevlerin tamamlanması beklenir.

Sinyal göndermek için kill komutunu kullanın.

kill -TSTP  # Yeni görevleri işlemeyi durdur

kill -TERM  # Sunucuyu kapat

Not: TERM veya INT sinyali, TSTP sinyali gönderilmeden gönderilirse, Server tüm işçilerin tamamlanması için 8 saniye beklemeye başlayacak (bu zaman aşımı süresini özelleştirmek için ShutdownTime yapılandırmasını kullanın). Bu süre içinde tamamlanmamış işçiler varsa, görevler tekrar bekleyen durumuna dönecek ve program yeniden başlatıldığında yeniden işleme alınacaktır.

Not: Şu anda Windows, TSTP sinyalini desteklememektedir.