- use CreateMutexW to make sure exception handler is singleton in the same process.
- Because one process may load multiple DLLs using YYCC.
- According to this, it will produce N times error log. N is the count of DLLs using YYCC exception handler.
- refactor exception handler. use a class instance to manage all global variables and add a std::mutex to let module be thread safe.
- change the way of check in console input testbench.