问题标签 [fifo]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - 捕获程序输出
我正在制作一个小型库,它基本上会将程序的标准输出(例如 printf())捕获到一个单独的进程/线程中......然后这个进程应该执行某些任务(比如说将这些捕获的输出写入文件) ...我才刚刚开始做严肃的 C 编程,所以我还在学习。
我想知道执行此操作的最佳方法是什么,我的意思是使用进程或线程...我如何捕获这些 printf() 语句...如果由程序生成,该库还必须处理任何子进程.. .一般假设是使用它的程序是线程的,所以我应该采取什么样的方法。
embedded - 嵌入式系统上的线程安全单消费者、单生产者 FIFO
我有一个 TI DSP(TMS320F28235,如果有人关心的话),我需要实现一个 FIFO,以便在主循环代码和中断之间排队信息。这个队列的高速执行非常关键,但正确的操作也是如此,我不确定我是否可以在没有任何显式同步的情况下实现 FIFO,或者如果不能,我必须禁用中断。
我找到了这个页面,想知道这里是否有人可以评论它的适用性。
c - 重定向时强制程序刷新其标准输出
我有一个将输出打印到标准输出的封闭源程序。我需要解析输出。所以我使用 dup2 将输出重定向到一个 fifo(我可以从中读取分叉和执行二进制文件的父进程),然后执行程序。问题是文件中的 fprintf 调用被缓冲,因为它现在正在写入文件。
在调用 exec 之前,我尝试在标准输出上使用 _IONBF 调用 setvbuf。但问题仍然存在。
为什么 setvbuf 对我没有帮助?
我怎样才能强制输出被刷新?
algorithm - 为什么 LRU 比 FIFO 好?
为什么最近最少使用的页面文件比 FIFO 更好?
python - 如何让 os.mkfifo 和 subprocess.Popen 一起工作?
我正在尝试使用命名管道重定向补丁命令输出。我试过这样:
但是我的脚本在Popen()调用中停止,就像补丁命令没有完成一样。我怎样才能让它正常工作?
c++ - FIFO 列表(移动元素)[C++]
晚安,人们!
我正在尝试解决一个相当简单的问题,但是.. 好吧,似乎我做不到。:)
这个想法是我有一个包含 n 个元素的 FIFO 列表(FIFO 队列),并且它被赋予了一个值 k (k < n)。我的小程序必须用 k 个元素将元素向左移动。(例如对于 n=4, k=3, a[]=(1, 2, 3, 4),结果是 4 1 2 3)。
但好吧,我离那还很远。
这是我到目前为止所写的:
任何帮助将不胜感激。先感谢您。
sql-server - Sql Server BULK INSERT 可以从命名管道/fifo 中读取吗?
BULK INSERT/bcp 是否可以从命名管道读取fifo样式?
也就是说,不是从真正的文本文件中读取,而是 BULK INSERT/bcp 是否可以从位于另一个进程的写入端的命名管道中读取?
例如:
- 创建命名管道
- 解压文件到命名管道
- 使用 bcp 或 BULK INSERT 从命名管道读取
或者:
- 创建 4 个命名管道
- 将 1 个文件拆分为 4 个流,将每个流写入单独的命名管道
- 使用 bcp 或 BULK INSERT 从 4 个命名管道读取到 4 个表
我找到的最接近的是这个家伙(现在无法访问站点),他设法使用bcp 写入命名管道,具有自己的实用程序和用法,如下所示:
但他无法让反向工作。
因此,在我开始做傻事之前,我想知道从根本上是否可以从带有 BULK INSERT 或 bcp 的命名管道中读取。如果可能的话,人们将如何设置它?NamedPipeServerStream
.NETSystem.IO.Pipes
命名空间中的其他内容是否足够?
例如,使用 Powershell的示例:
然后什么?
bash - “按需”写入 .Ts 文件(通知?...)
我有一个只能读取 samba 共享文件的媒体播放器。我想播放http流(例如从我的dreambox)。
我的想法是在我的 linux 上共享一个文件夹。在这个分享中,我将为每个我希望能够观看的电视频道放置一个(假的?)文件(例如:channel1.ts、channel2.ts ...)。
媒体播放器只能像使用常规文件一样读取这些文件。我的需要:做一些“监听”访问这些文件的事情,这样当我的媒体播放器访问它时,它会触发一个mencoder -oac copy -ovc copy -o channel1.ts http://path.to.the.broadcast.ts .
我尝试在一个空文件上使用inotify 。它很好地触发了mencoder,但媒体播放器在编码开始之前停止了(因为文件是空的,所以它在开始之前就到达了结尾)。也许,必须填充 5 秒的视频才能缓冲读取?
使用“fifo”可能会很好 => 我试过了,媒体播放器等待,当我做 mencoder 时,fifo 开始增长,媒体播放器播放它!是啊!!!...但是inotify似乎对fifo没有反应...所以我不能自动触发mencoder。
欢迎提出任何建议。
基本点:
- 媒体播放器只能读取常规文件
- 文件必须在 samba 共享文件夹中
- 记录必须按需“触发”(当媒体播放器尝试访问它时)
- 可以很好地观察“不活动”以停止记录/清空缓冲区文件
将这个问题形式化并不容易。我有点失望,我什至不知道我可以用谷歌搜索什么样的搜索。
希望这里的一些大师会找到一些可以解决问题的方法
干杯。
c# - 使用 FIFO 过滤
我想在一定时间内从流中过滤传入的包。
例如
5秒内过滤所有“A”
我想过用一种 FIFO 来实现它。
你认为最好的解决方案是什么?
我正在使用 c#,.net 3.5
c - 读取 fifo 的最后一行
情况如下:某些进程将行写入 fifo 文件(使用 创建mkfifo
)。在我的程序中的某个时刻,我想读取 fifo 中的最后一行,并丢弃所有其他行。仅当fifo 中的行数少于一行时,该过程才可能阻塞。
我想不出一个干净的方法来做到这一点,有什么想法吗?
编辑:写入过程将永远不会停止将行写入fifo,我的意思是最后一行是我读取fifo时的最后一行。它后面不一定跟着 EOF。