Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 25 for mutex (0.09 sec)

  1. cmd/local-locker.go

    	writers         atomic.Int32
    	lastCleanup     atomic.Pointer[time.Time]
    	locksOverloaded atomic.Int64
    }
    
    // getMutex will lock the mutex.
    // Call the returned function to unlock.
    func (l *localLocker) getMutex() func() {
    	l.waitMutex.Add(1)
    	l.mutex.Lock()
    	l.waitMutex.Add(-1)
    	return l.mutex.Unlock
    }
    
    func (l *localLocker) String() string {
    	return globalEndpoints.Localhost()
    }
    
    Registered: Sun Sep 07 19:28:11 UTC 2025
    - Last Modified: Fri Aug 29 02:39:48 UTC 2025
    - 12K bytes
    - Viewed (0)
  2. cmd/admin-heal-ops.go

    	var count int64
    	h.mutex.RLock()
    	defer h.mutex.RUnlock()
    
    	for _, v := range h.scannedItemsMap {
    		count += v
    	}
    	return count
    }
    
    // getScannedItemsMap - returns map of all scanned items against type
    func (h *healSequence) getScannedItemsMap() map[madmin.HealItemType]int64 {
    	h.mutex.RLock()
    	defer h.mutex.RUnlock()
    
    	// Make a copy before returning the value
    Registered: Sun Sep 07 19:28:11 UTC 2025
    - Last Modified: Fri Aug 29 02:39:48 UTC 2025
    - 25.4K bytes
    - Viewed (0)
  3. cmd/dynamic-timeouts.go

    // timeouts that are dynamically adapted based on actual usage results
    type dynamicTimeout struct {
    	timeout       int64
    	minimum       int64
    	entries       int64
    	log           [dynamicTimeoutLogSize]time.Duration
    	mutex         sync.Mutex
    	retryInterval time.Duration
    }
    
    type dynamicTimeoutOpts struct {
    	timeout       time.Duration
    	minimum       time.Duration
    	retryInterval time.Duration
    }
    
    Registered: Sun Sep 07 19:28:11 UTC 2025
    - Last Modified: Fri Aug 29 02:39:48 UTC 2025
    - 4.5K bytes
    - Viewed (0)
  4. cmd/erasure-common.go

    package cmd
    
    import (
    	"context"
    	"math/rand"
    	"sync"
    	"time"
    )
    
    func (er erasureObjects) getOnlineDisks() (newDisks []StorageAPI) {
    	disks := er.getDisks()
    	var wg sync.WaitGroup
    	var mu sync.Mutex
    	r := rand.New(rand.NewSource(time.Now().UnixNano()))
    	for _, i := range r.Perm(len(disks)) {
    		wg.Add(1)
    		go func() {
    			defer wg.Done()
    			if disks[i] == nil {
    				return
    			}
    Registered: Sun Sep 07 19:28:11 UTC 2025
    - Last Modified: Fri Aug 29 02:39:48 UTC 2025
    - 2.3K bytes
    - Viewed (0)
  5. cmd/erasure-sets.go

    // object sets. NOTE: There is no dynamic scaling allowed or intended in
    // current design.
    type erasureSets struct {
    	sets []*erasureObjects
    
    	// Reference format.
    	format *formatErasureV3
    
    	// erasureDisks mutex to lock erasureDisks.
    	erasureDisksMu sync.RWMutex
    
    	// Re-ordered list of disks per set.
    	erasureDisks [][]StorageAPI
    
    	// Distributed locker clients.
    	erasureLockers setsDsyncLockers
    
    Registered: Sun Sep 07 19:28:11 UTC 2025
    - Last Modified: Fri Aug 29 02:39:48 UTC 2025
    - 37K bytes
    - Viewed (1)
  6. cmd/config.go

    	if err != nil {
    		return err
    	}
    
    	bootstrapTraceMsg("lookup the configuration")
    
    	// Override any values from ENVs.
    	lookupConfigs(srvCfg, objAPI)
    
    	// hold the mutex lock before a new config is assigned.
    	globalServerConfigMu.Lock()
    	globalServerConfig = srvCfg
    	globalServerConfigMu.Unlock()
    
    	return nil
    Registered: Sun Sep 07 19:28:11 UTC 2025
    - Last Modified: Fri Aug 29 02:39:48 UTC 2025
    - 5.9K bytes
    - Viewed (0)
  7. cmd/config-current.go

    // found, otherwise use default parameters
    func newSrvConfig(objAPI ObjectLayer) error {
    	// Initialize server config.
    	srvCfg := newServerConfig()
    
    	// hold the mutex lock before a new config is assigned.
    	globalServerConfigMu.Lock()
    	globalServerConfig = srvCfg
    	globalServerConfigMu.Unlock()
    
    	// Save config into file.
    	return saveServerConfig(GlobalContext, objAPI, srvCfg)
    Registered: Sun Sep 07 19:28:11 UTC 2025
    - Last Modified: Fri Aug 29 02:39:48 UTC 2025
    - 28.5K bytes
    - Viewed (0)
  8. cmd/site-replication-metrics.go

    	ReplicaCount int64                `json:"replicaCount"`
    	M            map[string]*SRStatus `json:"srStatusMap"`
    
    	movingAvgTicker *time.Ticker // Ticker for calculating moving averages
    	lock            sync.RWMutex // mutex for srStats
    }
    
    // SRStatus has replication stats at deployment level
    type SRStatus struct {
    	ReplicatedSize int64 `json:"completedReplicationSize"`
    Registered: Sun Sep 07 19:28:11 UTC 2025
    - Last Modified: Fri Aug 29 02:39:48 UTC 2025
    - 8.2K bytes
    - Viewed (0)
  9. cmd/data-scanner-metric.go

    	actionsLatency [lifecycle.ActionCount]lockedLastMinuteLatency
    
    	// currentPaths contains (string,*currentPathTracker) for each disk processing.
    	// Alignment not required.
    	currentPaths sync.Map
    
    	cycleInfoMu sync.Mutex
    	cycleInfo   *currentScannerCycle
    }
    
    var globalScannerMetrics scannerMetrics
    
    const (
    	// START Realtime metrics, that only to records
    	// last minute latencies and total operation count.
    Registered: Sun Sep 07 19:28:11 UTC 2025
    - Last Modified: Fri Aug 29 02:39:48 UTC 2025
    - 9.4K bytes
    - Viewed (0)
  10. cmd/utils.go

    			runtime.SetBlockProfileRate(0)
    			return buf.Bytes(), err
    		}
    	case madmin.ProfilerMutex:
    		prof.record("mutex", 0, "before")
    		runtime.SetMutexProfileFraction(1)
    		prof.stopFn = func() ([]byte, error) {
    			var buf bytes.Buffer
    			err := pprof.Lookup("mutex").WriteTo(&buf, 0)
    			runtime.SetMutexProfileFraction(0)
    			return buf.Bytes(), err
    		}
    	case madmin.ProfilerThreads:
    Registered: Sun Sep 07 19:28:11 UTC 2025
    - Last Modified: Fri Aug 29 02:39:48 UTC 2025
    - 33K bytes
    - Viewed (0)
Back to top