1
我很好奇如何處理這個問題;我目前有一個DataSnap服務器設置和一個管理認證的TDSAuthenticationManager類。Delphi(DataSnap)我需要線程身份驗證嗎?
如果身份驗證失敗,我直接寫入表單TMemo或類似的東西以用於日誌記錄目的是否安全?觀察這個最好的方法是什麼?
我需要穿線嗎?
乾杯閱讀, 阿德里安
我很好奇如何處理這個問題;我目前有一個DataSnap服務器設置和一個管理認證的TDSAuthenticationManager類。Delphi(DataSnap)我需要線程身份驗證嗎?
如果身份驗證失敗,我直接寫入表單TMemo或類似的東西以用於日誌記錄目的是否安全?觀察這個最好的方法是什麼?
我需要穿線嗎?
乾杯閱讀, 阿德里安
是的,你需要同步的,因爲事件的DataSnap在不同的線程的上下文中運行,並且你可能知道,在UI的設計僅限於主線程。
所以,如果你想在用戶界面中顯示一些東西,你必須照顧如何去做。另一方面,如果你想日誌到一個文件,你不需要同步,但你必須小心,因爲有可能兩個不同的線程同時嘗試登錄。
我將評估這些選項是:
由於服務器傾向於在生產環境中作爲服務運行,因此我會選擇後者。
...或使用Delphi的許多日誌記錄庫之一,如[Log4D](http://mikejustin.wordpress.com/2012/09/12/delphi-and-free-pascal-logging-with- (-file4d-open-source-library /),它有各種輸出選項(文件,ODS,SMTP,UDP,...) – mjn