Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ra1nz0r/counting_concurrency
Работа и расчёты многопоточности.
https://github.com/ra1nz0r/counting_concurrency
cicd concurrency go golang unit-testing
Last synced: about 2 months ago
JSON representation
Работа и расчёты многопоточности.
- Host: GitHub
- URL: https://github.com/ra1nz0r/counting_concurrency
- Owner: Ra1nz0r
- Created: 2024-06-22T16:40:37.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-06-22T17:31:05.000Z (6 months ago)
- Last Synced: 2024-07-12T04:59:46.750Z (6 months ago)
- Topics: cicd, concurrency, go, golang, unit-testing
- Language: Go
- Homepage:
- Size: 12.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Счётчик "многопоточности".
__Горутина, генерирует числа и отправляет их в канал. Далее несколько горутин читают и распределяют их по каналам. Под конец производится обратное действие, из каналов пишутся все числа в один результирующий.__
- __При правильном выполнении кода:__
- [x] Количество и сумма входящих чисел совпадает с количеством и суммой чисел, которые получены из канала вывода.
- [x] Количество проходящих чисел по каналам не должно сильно отличаться.Числа генерируются с помощью ```context.WithTimeout``` в течение одной секунды.\
Количество обрабатывающих горутин зависит от числа ядер ```runtime.NumCPU()```.\
Вышеуказанные параметры можно изменить в ```cmd/api/app.go```***
#### Инструкция по локальному запуску:Запуск производится по-умолчанию: ```go run ./...```\
Тесты выполняются по-умолчанию: ```go test -v ./... -count=1```***
#### Пример:![logo](/web/example.jpg)