ndn-dpdk: github.com/usnistgov/ndn-dpdk/core/urcu Index | Files

package urcu

import "github.com/usnistgov/ndn-dpdk/core/urcu"

Package urcu is a thin wrapper of Userspace RCU library.


Package Files

readside.go writeside.go

func Barrier Uses

func Barrier()

Barrier declares an RCU barrier.

func Synchronize Uses

func Synchronize()

Synchronize invokes synchronize_rcu.

type ReadSide Uses

type ReadSide struct {
    IsOnline bool
    NLocks   int

ReadSide represents an RCU read-side thread. Fields are exported so that they can be updated to reflect what C code did.

func NewReadSide Uses

func NewReadSide() *ReadSide

NewReadSide registers current thread an an RCU read-side thread. If the thread is registered in C code, do not call this function, use a zero ReadSide instead.

func (*ReadSide) Close Uses

func (*ReadSide) Close() error

Close unregisters current thread as an RCU read-side thread. If the thread is unregistered in C code, do not call this function.

func (*ReadSide) Lock Uses

func (rs *ReadSide) Lock()

Lock obtains read-side lock.

func (*ReadSide) Offline Uses

func (rs *ReadSide) Offline()

Offline marks current thread offline.

func (*ReadSide) Online Uses

func (rs *ReadSide) Online()

Online marks current thread online.

func (*ReadSide) Quiescent Uses

func (rs *ReadSide) Quiescent()

Quiescent indicates current thread is quiescent.

func (*ReadSide) Unlock Uses

func (rs *ReadSide) Unlock()

Unlock releases read-side lock.

Package urcu imports 2 packages (graph) and is imported by 4 packages. Updated 2020-10-04. Refresh now. Tools for package owners.