• Задача
  • Решение
  • Обсуждение

SetOnce: первый CAS

Флаг этапа должен выставиться ровно один раз. Реализуйте setOnce(flag *atomic.Int64, value int64) bool через flag.CompareAndSwap(0, value).

GolangРешение
func setOnce(flag *atomic.Int64, value int64) bool {
	return flag.CompareAndSwap(0, value)
}

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

00:00:00
Наш сайт собирает куки. Чтобы тебе было удобнее им пользоваться. Нажимая на кнопку, ты даёшь разрешение собирать куки