ikernel_wg.go 958 B

1234567891011121314151617181920212223
  1. package kspec
  2. import (
  3. "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs"
  4. )
  5. // IKernelWg -- интерфейс к именованному ожидателю потоков.
  6. type IKernelWg interface {
  7. // Add -- добавляет имя потока в ожидатель потоков
  8. Add(*defs.StreamName)
  9. // Done -- удаляет имя потока из ожидания
  10. Done(*defs.StreamName)
  11. // Wait -- ожидает завершения работы всех потоков
  12. Wait()
  13. // IsWork -- признак работы ожидателя потоков (после закрытия добавлять нельзя)
  14. IsWork() bool
  15. // List -- возвращает список имён потоков на ожидании
  16. List() []*defs.StreamName
  17. // Len -- возвращает размер списка потоков ожидания
  18. Len() int
  19. // Log -- возвращает логгер ожидателя групп
  20. Log() ILogBuf
  21. }