Januschan icon

Json.NET serialize measurement

Januschan | PRO | 07/23/20 09:37:46 PM UTC | 0 ⭐ | 2002 👁️ | Never ⏰ | []
C# |

1.11 KB

|

None

|

0 👍

/

0 👎

int trialCount = 10;
 
DateTimeOffset start;
DateTimeOffset stop;
 
double serializeTotal = 0;
double deserializeTotal = 0;
for (int i = 0; i < trialCount; i++)
{
    start = DateTimeOffset.UtcNow;
    string profileJson = JsonConvert.SerializeObject(profile, RestClientProvider.SerializerSettingsForHeaders);
    stop = DateTimeOffset.UtcNow;
 
    double serializeTime = stop.Subtract(start).TotalMilliseconds;
 
    serializeTotal += serializeTime;
    
    Log.LogDebug($"Serialize {serializeTime}ms");
    
    start = DateTimeOffset.UtcNow;
    object profile2 = JsonConvert.DeserializeObject<MobileProfile>(profileJson, RestClientProvider.SerializerSettingsForHeaders);
    stop = DateTimeOffset.UtcNow;
 
    double deserializeTime = stop.Subtract(start).TotalMilliseconds;
    
    Log.LogDebug($"Deserialize {deserializeTime}ms");
 
    deserializeTotal += deserializeTime;
}
 
double serializeAvg = serializeTotal / trialCount;
double deserializeAvg = deserializeTotal / trialCount;
 
Log.LogDebug($"Serialize Average {serializeAvg}ms");
Log.LogDebug($"Deserialize Average {deserializeAvg}ms");    

Comments

  •  icon
    01/01/70 12:00:00 AM UTC
    Plain Text |

    0 B

    |

    👍

    /

    👎