summaryrefslogtreecommitdiff
path: root/workers.go
diff options
context:
space:
mode:
authordemo <demo@antix1>2026-05-26 21:22:14 -0400
committerdemo <demo@antix1>2026-05-26 21:22:14 -0400
commit487a3877000e94c6ac85a198195ae36582dff3c1 (patch)
tree64060dd1760200ddf3b8b11954f36a87cd6b8025 /workers.go
parent1e7d34bb14057c79ea1f7fa75e6ecf29951b69aa (diff)
feat: add break condition from worklist loop
Diffstat (limited to 'workers.go')
-rw-r--r--workers.go6
1 files changed, 6 insertions, 0 deletions
diff --git a/workers.go b/workers.go
index ab99da8..fcfb504 100644
--- a/workers.go
+++ b/workers.go
@@ -40,6 +40,7 @@ func workers(startURL url.URL, maxConcurrency, maxURLs int) {
seen := make(map[url.URL]bool)
count := 1
+loop:
for batch := range worklist {
for _, u := range batch {
if !seen[u] {
@@ -47,6 +48,11 @@ func workers(startURL url.URL, maxConcurrency, maxURLs int) {
count++
seen[u] = true
+
+ if len(seen) == maxURLs {
+ break loop
+ }
+
urls <- u
}
}