Threadpool Info: Allow to serialize negative thread pool sizes

As a SizeValue is used for serializing the thread pool size, a negative number
resulted in throwing an exception when deserializing (using -ea an assertionerror
was thrown).

This fixes a check for changing the serialization logic, so that negative numbers are read correctly.

Closes #6325
Closes #5357
honestly I don't think we should allow negative values here! In such a case we should maybe use a sentinel or `null` as the negative invariant. Throw a hard exception if a negative value is passed!