HPCC-8633 Add mutex to control data access for preflight result

Sometimes, ESP EclWatch crashes when doing a preflight on a big
dev environment. The core dump shows that the problem happens
inside Cws_machineEx::setMachineInfo() with double free memory.
When doing a preflight, WsMachine service creates multiple threads
(one thread per each target computer). Every thread will call the
setMachineInfo() and add its preflight result to a shared array of
result objects. This fix adds a mutex to synchronize the array
access. I did many tests after the fix and no crash happened in
those tests.

Signed-off-by: Kevin Wang <kevin.wang@lexisnexis.com>
Merge pull request #3896 from wangkx/h8633

HPCC-8633 Add mutex to control data access for preflight result

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>