文件监控类

package
v0.0.0-...-8687494 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 11, 2024 License: MIT Imports: 18 Imported by: 0

Documentation

Overview

包gfsnotify提供了一个与平台无关的接口,用于文件系统通知。 md5:85a6a9e7b52e09e5

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Exit

func Exit()

Exit 只在回调函数中使用,可以用于从观察者中移除当前的回调。 md5:697f4cd00adc082e

func Remove

func Remove(path string) error

Remove 递归地从监视器中删除给定`path`的所有监控回调。 md5:63888786f53ffca5

func RemoveCallback

func RemoveCallback(callbackId int) error

RemoveCallback 从观察者中移除具有给定ID的指定回调。 md5:af906f3547f93046

Types

type Callback

type Callback struct {
	Id   int                // 回调对象的唯一标识符。 md5:5e0b273b79bf867f
	Func func(event *Event) // Callback function.
	Path string             // 限定的文件路径(绝对)。 md5:300376a734dfb30f
	// contains filtered or unexported fields
}

Callback是Watcher的回调函数。 md5:fa67ea2e048fd039

func Add

func Add(path string, callbackFunc func(event *Event), recursive ...bool) (callback *Callback, err error)

使用默认的观察者(`watcher`)监控路径`path`,并调用回调函数`callbackFunc`。 可选参数`recursive`指定是否递归地监控路径`path`,默认为true。 md5:e660326b83136bd1

func AddOnce

func AddOnce(name, path string, callbackFunc func(event *Event), recursive ...bool) (callback *Callback, err error)

AddOnce 使用唯一名称 `name` 及回调函数 `callbackFunc`,仅使用默认监视器监控 `path` 一次。 如果多次调用 AddOnce 并传入相同的 `name` 参数,`path` 仅会被添加监控一次。如果使用相同的 `name` 调用两次,它将返回错误。

可选参数 `recursive` 指定是否递归监控 `path`,默认为 true。 md5:c28c83d5a2230d07

type Event

type Event struct {
	Path    string       // Absolute file path.
	Op      Op           // File operation.
	Watcher *X结构_Watcher // Parent watcher.
	// contains filtered or unexported fields
}

Event 是底层 fsnotify 产生的事件。 md5:cf38e0981dbdfa84

func (*Event) IsChmod

func (e *Event) IsChmod() bool

IsChmod 检查当前事件是否包含文件/文件夹权限变更事件。 md5:71f642290a74e6ad

func (*Event) IsCreate

func (e *Event) IsCreate() bool

IsCreate 检查当前事件是否包含文件/目录创建事件。 md5:b4246a419de617f8

func (*Event) IsRemove

func (e *Event) IsRemove() bool

IsRemove 检查当前事件是否包含文件/文件夹删除事件。 md5:bb4f4468acdccf13

func (*Event) IsRename

func (e *Event) IsRename() bool

IsRename 检查当前事件是否包含文件/文件夹重命名事件。 md5:98b87df81be40ac3

func (*Event) IsWrite

func (e *Event) IsWrite() bool

IsWrite检查当前事件是否包含文件/文件夹写入事件。 md5:0f9ece45dfe47971

func (*Event) String

func (e *Event) String() string

String 返回当前事件的字符串表示。 md5:a1d293a81ad7d90a

type Op

type Op uint32

Op 是文件操作的位标志联合。 md5:b9c63ca71272a7d3

const (
	CREATE Op = 1 << iota
	WRITE
	REMOVE
	RENAME
	CHMOD
)

type X结构_Watcher

type X结构_Watcher struct {
	// contains filtered or unexported fields
}

X结构_Watcher是文件更改的监视器。 md5:82c8c6038aefc543

func New

func New() (*X结构_Watcher, error)

New 创建并返回一个新的观察者。 注意,观察者的数量受系统文件描述符限制。 例如:在 Linux 系统中,fs.inotify.max_user_instances 系统变量。 md5:a2587b1623329074

func (*X结构_Watcher) Add

func (w *X结构_Watcher) Add(path string, callbackFunc func(event *Event), recursive ...bool) (callback *Callback, err error)

将监控器添加到观察者,监控的路径为`path`,回调函数为`callbackFunc`。 可选参数`recursive`指定是否递归监控`path`,默认值为真。 md5:35e0c4a9c0901ef8

func (*X结构_Watcher) AddOnce

func (w *X结构_Watcher) AddOnce(name, path string, callbackFunc func(event *Event), recursive ...bool) (callback *Callback, err error)

AddOnce 使用唯一的名称 `name` 监控 `path`,并调用回调函数 `callbackFunc` 只一次。如果多次使用相同的 `name` 参数调用 AddOnce,`path` 将只被添加一次监控。

如果两次使用相同的 `name` 调用,将返回错误。

可选参数 `recursive` 指定是否递归地监控 `path`,默认为 true。 md5:6ead1d3d4bff4432

func (*X结构_Watcher) Close

func (w *X结构_Watcher) Close()

Close 关闭监听器。 md5:c20cd2708e199b34

func (*X结构_Watcher) Remove

func (w *X结构_Watcher) Remove(path string) error

Remove 递归地移除与"path"关联的监视器和所有回调。 md5:e48d059cb96966c1

func (*X结构_Watcher) RemoveCallback

func (w *X结构_Watcher) RemoveCallback(callbackId int)

RemoveCallback 从观察者中移除具有给定回调ID的回调。 md5:78b678cca3a84b90

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL