code: function set(value) {
            if (value === true) {
              while (waitingQueue.length > 0) {
                waitingQueue[0]();
                waitingQueue.shift();
              }
            }
            return value;
          }
docs: create a setter hook here
  when it get ture, it will run all function in waiting queue immediately