Может ли JObject привести к утечкам памяти в условиях интенсивного использования? - PullRequest
0 голосов
/ 21 апреля 2020

Я пытаюсь реализовать решение в asp. net ядре 3. Мне нужно сделать несколько личных свойств УДАЛЕНО в целях безопасности при входе в файл. Поскольку JsonDocument доступен только для чтения и я не могу также использовать JsonPath, для этого я перешел на NewtonSoft и использую JObject.Parse. Мои проблемы:

  • Насколько это повлияет на мою производительность?

  • Приведет ли это к утечкам памяти?

Код:

var requestTokens = JObject.Parse(requestBodyText); // parse request/response 

foreach (string property in RedactedFields) //for each redacted field in list
{
    JToken token = requestTokens.SelectToken(property); // apply jsonpath
    if (token != null) 
    {
        // jsonpath found
        ((Newtonsoft.Json.Linq.JValue)token).Value = "******REDACTED******";
        requestTokens.SelectToken(property).Replace(token);
    }
}
...