2010-03-20 39 views

回答

1

是的我相信這是正確的。

如果您存儲在數據庫中的會話,再有就是對SQL Server代理作業多數民衆贊成在調用這個過程每分鐘左右:

DECLARE @now datetime 
    SET @now = GETUTCDATE() 

    DELETE ASPStateTempSessions WHERE Expires < @now 

沒有觸發會話過期。讓我們說這是一個觸發器,哪裏可以?沒有地方可以僅僅通過觸發器來理解會話過期並自動刪除自己。

另一方面你可以做的不是創建一個計時器,而是當用戶請求一個頁面時,每隔1-2分鐘觸發一個函數來刪除已過期的頁面。

因此,您從用戶調用中創建觸發器,但必須使其每隔1-2分鐘使用某種鎖定運行,並檢查最後一次運行。

希望這有助於。