乙個模組如何處理異常

2021-08-22 10:49:47 字數 606 閱讀 4871

乙個模組如何處理異常?

最理想,最好的用模組是沒有異常,保證操作如預想的結果一致。

當操作無法成功完時,必然會產生錯誤,或異常。

乙個是返回錯誤碼,乙個是丟擲異常。

錯誤一般是立即處理,不然就是忽略錯誤。一般不會儲存錯誤,然後統一處理。

異常的優點是可以處理,也可以繼續丟擲,由更上層進行統一處理。

可以丟擲異常大大簡化了庫的開發者,碰到非正常情況不能外理了,就丟擲異常。

這其實是將錯誤處理交給了庫呼叫者。

對於拋異常的函式,頭疼的是一般無法知道它的所有異常,無法精確處理其所有異常,

只能針對個別異常進行處理。

因為該函式一般只能知道自己拋什麼異常,但不能確定其呼叫的函式會拋什麼異常。

一般函式宣告中的異常指示總是不存在的。

如果對這樣的函式來乙個try/except(...)接所有錯誤,那麼異常就退化為錯誤處理。

而返回錯誤總是確定的,返回哪些錯誤號是必須明確的。

對於本函式所呼叫的函式的錯誤總是已經處理了,而不是像異常那樣直接丟擲。

理想的庫是兩者都要,如stl的iostream庫,可以拋異常,也可以查詢是否錯誤。

std::iostream預設是不拋異常。

Nginx如何處理乙個請求

基於名字的虛擬主機 nginx首先選定由哪乙個虛擬主機來處理請求。讓我們從乙個簡單的配置 其中全部3個虛擬主機都在埠 80上監聽 開始 server server server 在這個配置中,nginx僅僅檢查請求的 host 頭以決定該請求應由哪個虛擬主機來處理。如果host頭沒有匹配任意乙個虛擬...

nginx如何處理乙個請求

nginx收到請求時第一步是決定由哪個伺服器來處理。以乙個配置了三個虛擬伺服器的例子為例,三個虛擬伺服器軍監聽80埠。server server server根據以上配置,nginx只對請求的 host 頭域檢查,並根據其值決定將請求路由給哪個伺服器。如果和任何乙個伺服器都不匹配,或者請求不包含乙個...

Nginx如何處理乙個請求

nginx是什麼?nginx是俄羅斯人編寫的十分輕量級的http伺服器,nginx,它的發音為 engine x 是乙個高效能的http和反向 伺服器,同時也是乙個imap pop3 smtp 伺服器 nginx是由俄羅斯人 sysoev為俄羅斯訪問量第二的 rambler.ru站點開發的,它已經在...