MCPcopy
hub / github.com/breejs/bree / stop

Method stop

src/index.js:650–682  ·  view source on GitHub ↗
(name)

Source from the content-addressed store, hash-verified

648 }
649
650 async stop(name) {
651 debug('stop', name);
652
653 if (!this._init) await this.init();
654
655 if (name) {
656 this.removeSafeTimer('timeouts', name);
657 this.removeSafeTimer('intervals', name);
658
659 if (this.workers.has(name)) {
660 this.workers.get(name).once('message', (message) => {
661 if (message === 'cancelled') {
662 this.config.logger.info(
663 `Gracefully cancelled worker for job "${name}"`,
664 this.getWorkerMetadata(name)
665 );
666 this.workers.get(name).terminate();
667 }
668 });
669 this.workers.get(name).postMessage('cancel');
670 }
671
672 this.removeSafeTimer('closeWorkerAfterMs', name);
673
674 return pWaitFor(() => !this.workers.has(name));
675 }
676
677 for (const job of this.config.jobs) {
678 this.stop(job.name);
679 }
680
681 return pWaitFor(() => this.workers.size === 0);
682 }
683
684 async add(jobs) {
685 debug('add', jobs);

Callers 5

removeMethod · 0.95
index.jsFile · 0.80
start.jsFile · 0.80
stop.jsFile · 0.80

Calls 4

initMethod · 0.95
removeSafeTimerMethod · 0.95
getWorkerMetadataMethod · 0.95
infoMethod · 0.80

Tested by

no test coverage detected