mirror of
https://github.com/charmbracelet/crush.git
synced 2025-08-02 05:20:46 +03:00
fix: small fixes in csync
This commit is contained in:
3
internal/csync/doc.go
Normal file
3
internal/csync/doc.go
Normal file
@@ -0,0 +1,3 @@
|
||||
// Package csync provides concurrent data structures for safe access in
|
||||
// multi-threaded environments.
|
||||
package csync
|
||||
@@ -260,22 +260,17 @@ func TestSlice(t *testing.T) {
|
||||
var wg sync.WaitGroup
|
||||
|
||||
// Concurrent appends
|
||||
for i := 0; i < numGoroutines; i++ {
|
||||
wg.Add(1)
|
||||
for i := range numGoroutines {
|
||||
wg.Add(2)
|
||||
go func(start int) {
|
||||
defer wg.Done()
|
||||
for j := 0; j < itemsPerGoroutine; j++ {
|
||||
for j := range itemsPerGoroutine {
|
||||
s.Append(start*itemsPerGoroutine + j)
|
||||
}
|
||||
}(i)
|
||||
}
|
||||
|
||||
// Concurrent reads
|
||||
for i := 0; i < numGoroutines; i++ {
|
||||
wg.Add(1)
|
||||
go func() {
|
||||
defer wg.Done()
|
||||
for j := 0; j < itemsPerGoroutine; j++ {
|
||||
for range itemsPerGoroutine {
|
||||
s.Len() // Just read the length
|
||||
}
|
||||
}()
|
||||
|
||||
Reference in New Issue
Block a user