[bugfix] setTimeout => setImmediate