标签: async

我可以查看“同步”操作的进度吗?

我已将一个大文件复制到安装在带有异步 Linux 系统上的 USB 磁盘中。这相对较快地返回到命令提示符,但是当我键入时sync,当然,它必须全部转到磁盘,这需要很长时间。

我知道它会很慢,但是有什么地方可以让我看到计数器降到零吗?看着bufferstop没有帮助。

linux filesystems io async

144
推荐指数
4
解决办法
7万
查看次数

保存光标位置并在终端中恢复它

我正在使用一些终端功能在bash. 我想得到这样的东西:在输出字符串时PROMPT_COMMAND,保存终端光标位置,打印放置...并执行其他操作(例如打印其他信息);然后一段时间后回到记忆的位置并打印一些新的东西。PS1被设计成命令本身放在换行符上,因此异步输出只是终端中的文本。

我发现cupterminfo 条目将光标移动到给定位置,还有转义码可以获取当前位置(例如,请参阅此问题)。但对我来说,似乎所有这些都在屏幕上使用光标位置,而不是在终端缓冲区中。这意味着在放置新行后,我记住的位置将是错误的。

有没有办法使用终端光标位置来根据缓冲区位置存储和恢复光标位置?您可以假设记住的位置仍然在缓冲区的可见部分(因此您实际上可以将光标放在那里),但它可能会向上移动几行。现在,让我们不考虑竞争条件。如果没有,我会尝试寻找其他技巧。

zsh外壳实际上具有异步提示支持,但我实际上不知道它是否会在输出之前用户按下Enter以转到新行。

shell prompt terminal async terminfo

9
推荐指数
1
解决办法
4525
查看次数

为什么 io_uring 对提交队列有一个间接层?

根据io_uring 的论文,提交环包含提交数组的索引,其中存储提交事件本身。文档对该间接层的解释如下:

一个重要的区别是,虽然 CQ 环直接索引 cqes 的共享数组,但提交方在它们之间有一个间接数组。因此,提交端环形缓冲区是该数组的索引,该数组又包含 sqes 的索引。乍一看,这可能看起来很奇怪和令人困惑,但背后有一些原因。某些应用程序可能会将请求单元嵌入内部数据结构中,这使它们能够灵活地执行此操作,同时保留在一次操作中提交多个 sqes 的能力。这反过来又允许更轻松地将所述应用程序转换为 io_uring 接口。

但我并没有遵循“应用程序可以将请求单元嵌入内部数据结构”的含义,也没有遵循关于间接层因此能够实现的功能的直觉。

有人可以换句话解释一下这一层间接的好处是什么吗?

io async

4
推荐指数
1
解决办法
440
查看次数

使用 nohup 后新终端上的消息

我正在尝试在登录脚本 ( )上异步运行一些命令.bash_profile

当我打开一个新终端时,我看到这样的消息。当我通过 SSH 登录系统时,它们也会出现。

Last login: Sat Jun 11 19:21:44 on ttys001
[1]-  Exit 127    nohup -c 'git fetch -p && git pull' < /dev/null >&/dev/null  (wd: ~/cryptopp)
(wd now: ~)
[2]+  Exit 127    nohup -c 'git fetch -p && git pull' < /dev/null >&/dev/null  (wd: ~/openssl)
(wd now: ~)
Run Code Online (Sandbox Code Playgroud)

登录脚本执行以下操作:

if [ -d "$HOME/cryptopp" ]; then
    cd "$HOME/cryptopp"
    nohup -c 'git fetch -p && git pull' </dev/null &>/dev/null &
fi

if [ -d "$HOME/openssl" …
Run Code Online (Sandbox Code Playgroud)

bash shell-script nohup async

3
推荐指数
1
解决办法
883
查看次数

如何将侦听器附加到 sysfs 文件?

如何监视sysfs文件更改(如/sys/class/net/eth0/statistics/operstate)并在内容更改时执行命令?

  • inotify 不起作用 sysfs
  • 我不想投票。我想设置一个带有回调例程的侦听器一次

filesystems sysfs inotify linux-kernel async

2
推荐指数
1
解决办法
247
查看次数