Hata İşleme (RPC)
Zaman uyumlu RPC'de istemci, başarılı veya hata koduyla döndüren bir uzak çağrı yapar. Zaman uyumsuz RPC, bir çağrının başarısız olması için daha fazla fırsat sağlar ve bu hatalar nerede ve ne zaman oluştuklarına bağlı olarak farklı şekilde işlenir. Aşağıdaki tabloda, bir çağrının başarısız olmanın yolları ve nasıl işlendiği açıklanmaktadır.
İstemci Tarafı Temizleme
Sunucu tarafı temizlemede önemli bir kavram, teslim noktasıdır. Zaman uyumsuz bir çağrının sunucu tarafında işlenmesi sırasında, bazı işlemler genellikle çağrıyı alan iş parçacığında (dağıtıcı iş parçacığıolarak da bilinir) gerçekleştirilir ve isteğe bağlı olarak dağıtıcı iş parçacığı bellek bloğuna yeterli durumu koyar ve çağrı için işlemeye devam etmek için başka bir iş parçacığına (çalışan iş parçacığıolarak da bilinir) sinyal gönderir. Dağıtıcı iş parçacığının çalışan iş parçacığının teslim noktası olarak adlandırıldığını başarıyla işaret ettiği an.
Sunucu Tarafı Temizleme
Kanallar için Özel Hata İşleme Durumları
Kanallar kullanılırken hata işlemeye yönelik özel durumlar vardır. Aşağıdaki listede hatanın kaynağı ve hatanın nasıl işleneceğini açıklanmaktadır.
Hata kaynağı | İşlenme şekli |
---|---|
İstemci göndermeyi çağırır ve çağrı başarısız olur. | RPC API çağrısı gerekmez. Tüm RPC durumu temizlendi. |
kanallarındakiboşaltılmadan önce istemci rpcasyncCompleteCallçağırır. | Çağrı uygun kanal doldurma hata koduyla başarısız oluyor. |
İstemci çağrıları çeker ve çağrı başarısız olur. | RPC API çağrısı gerekmez. Tüm RPC durumu temizlendi. |
İstemci veya sunucu, yanlış sırada gönderme veya çekme çağrısında bulunur. | Çalışma zamanı, kanal doldurma hata durumunu döndürür. |
Sunucu gönderme veya çekme çağrıları gönderir ve çağrı başarısız olur. | Gönderme bir hata kodu döndürür. RpcAsyncCompleteCallçağrısı gerekmez. |
Kanallar boşaltılmadan önce sunucu rpcasynccompletecall çağırır. | Kanal çağrısı bir boru doldurma hatası durumu döndürür. |
Gönderme işleminden sonra bir alma işlemi başarısız olur. | Sunucu kanal verilerini almak için çekmeyi bir sonraki çağırışında bir hata döndürülür. |