global-mutex
Global object and Mutex object implements.
Global
// file1.jsconst global = GlobalObject;//globalparam = 'a';
// file2.jsconst global = GlobalObject;ifglobalparam === 'a' // true
Mutex
// const InitMutex Mutex = ; // ; //MEMORY STORE (only in process), logger > log4js //InitMutex({logger: logger, prefix: 'mutex:', expire: 60, redis: {host: '127.0.0.1', port: 6379}}); //if USE REDIS (mutex for multi process, multi servers) // { return { console; ; }; } let mutex = 'LOCK_A'; mutex; let mutex = 'LOCK_A'; mutex;
Singleton
//const Singleton = ; // { // // param1, param2 is not dependent to create Singleton // super...arguments key SampleClass; ifthisisNewInstance // // new instance (first time only) // } // End of SampleClass //let a = 'P1' 'P2' 'KEY1';let b = 'P3' 'P4' 'KEY2';let c = 'P5' 'P6' 'KEY1'; ifa === c // 'KEY1' === 'KEY1' // true ifa === b // 'KEY1' !== 'KEY2' // false ifb !== c // 'KEY2' !== 'KEY1' // false