[英]Dynamic CRM Shared Variables Thread Safety
我有一個Dynamic CRM插件,它有兩個步驟。 一個是在pre-create上運行,另一個是在post-create上運行。 我使用過共享變量。 我在預創建時設置共享變量中的值,並在創建后重新創建值。
現在它是線程安全的。 如果兩個用戶在同一個組織中觸發相同的插件,那么他們是否會過度寫入其他數據?
在共享變量中設置值:
context.SharedVariables.Add("statecode", stateCodeValue);
context.SharedVariables.Add("statuscode", statusCodeValue);
從共享變量中獲取值:
int statecode = (int)context.SharedVariables["statecode"];
int statuscode = (int)context.SharedVariables["statuscode"];
是的,這是線程安全的。 傳遞給插件類的IPluginExecutionContext
是為插件執行管道唯一創建的對象。 共享變量從一個階段傳遞到下一個階段(PreValidation => PreOperation => PostOperation => AsyncOperation)。
執行管道特定於CRM平台處理的任何單個操作。 (例如,關於特定記錄的創建或更新消息。)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.