io-buffering相关内容

Lisp 格式和强制输出

我不明白为什么这段代码在不同的实现中表现不同: (格式为“asdf")(setq var (读取)) 在 CLISP 中,它的行为符合预期,在读取后打印提示,但在 SBCL 中它读取,然后输出.我在网上看了一点,改了一下: (格式为“asdf")(力输出 t)(setq var (读取)) 这再次在 CLISP 中工作正常,但在 SBCL 中它仍然读取,然后输出.我什至尝试将其拆分为另一个 ..
发布时间:2022-01-04 08:38:40 其他开发

了解 Ruby 和 OS I/O 缓冲

IO 缓冲在 Ruby 中是如何工作的?使用 IO 和 File 类时,数据多久刷新到底层流?这与操作系统缓冲相比如何?需要做些什么来保证给定的数据已写入磁盘,然后才能自信地将其读回进行处理? 解决方案 Ruby IO 文档并不是 100% 清楚说明这种缓冲是如何工作的,但您可以从文档中提取以下内容: Ruby IO 有自己的内部缓冲区 除此之外,底层操作系统可能会也可能不会进一步 ..
发布时间:2022-01-04 08:10:33 其他开发

如何在 Perl 中刷新文件?

我有 Perl 脚本,它每 3 秒向现有文件追加一个新行.此外,还有一个 C++ 应用程序可以从该文件中读取数据. 问题是应用程序在脚本完成并关闭文件句柄后开始读取文件.为了避免这种情况,我想在每行追加后刷新.我该怎么做? 解决方案 尝试: 使用IO::Handle;$fh->autoflush; 这实际上是在 一个早期问题中发布的一种自动刷新方式我的,它询问了普遍接受的实现这一 ..
发布时间:2021-12-10 18:21:11 其他开发

我如何冲洗cin缓冲区?

如何清除 C++ 中的 cin 缓冲区? 解决方案 可能: std::cin.ignore(INT_MAX); 这会读入并忽略所有内容,直到 EOF.(您还可以提供第二个参数,它是要读取的字符,直到(例如:'\n' 忽略单行). 此外:您可能还想在此之前执行:std::cin.clear(); 以重置流状态. ..
发布时间:2021-12-01 15:05:49 C/C++开发

Cygwin终端缓冲器STDOUT

我使用Altera Quartus软件,该软件带有自己的Cygwin发行版和一个哑终端,根据Altera在我的“开始"菜单中放置的快捷方式,哑终端使用 运行 cmd.exe/c"c:\ altera \ 15.1 \ nios2eds \ NiosII Command Shell.bat" ,此批处理文件在其中配置Quartus的环境并启动bash.当我使用此窗口运行Altera工具时, ..
发布时间:2021-04-14 20:47:42 其他开发

有什么办法可以找到文件对象的缓冲区大小

我正在尝试“映射"一个很大的ascii文件.基本上,我会读行直到找到一个特定的标签,然后才想知道该标签的位置,以便稍后可以再次查找它以提取关联的数据. from itertools import dropwhile with open(datafile) as fin: ifin = dropwhile(lambda x:not x.startswith('Foo'), fin) ..
发布时间:2020-11-05 19:51:09 Python

使用Rack将流媒体上传到套接字

我目前有一个在FCGI处理程序中运行的Sinatra应用程序.我想编写一个处理程序,该处理程序将位于机架文件中(可能位于Sinatra应用程序的前面),并将通过套接字将大文件上载流传输到另一台服务器(首先不将其缓存在磁盘上),并与请求互锁.因此,我想做的是某种无需参数准备的流解码发送工作流.我在某处读到有问题,因为特别是由于Rails团队希望查看中间件管道的方式,使得Rack中的所有上载都可以重绕 ..
发布时间:2020-11-03 23:18:43 其他开发

如何在Perl中刷新文件?

我有Perl脚本,该脚本每3秒向现有文件追加一条新行.另外,还有一个C ++应用程序可以读取该文件. 问题在于脚本完成并关闭文件句柄后,应用程序开始读取文件.为了避免这种情况,我想在每行追加后刷新,但是我是Perl的新手,不知道该怎么做. 解决方案 尝试: use IO::Handle; $fh->autoflush; 这实际上是作为自动冲洗的一种方式发布在早期问题中我的, ..
发布时间:2020-05-25 18:44:31 其他开发

了解Ruby和OS I / O缓冲

IO缓存如何在Ruby中工作?使用 IO 和文件类时,数据刷新到基础流的频率是多少?这与OS缓冲相比如何?需要做些什么来保证给定的数据写入磁盘,然后自信地将其读回处理? 解决方案 Ruby IO文档并不是100%清楚这个缓冲是如何工作的,但是这是你可以从文档中提取的: Ruby IO有它自己的内部缓冲区 除此之外,底层操作系统可能会或可能不会进一步缓冲数据。 要查看的相关方法 ..
发布时间:2018-08-24 17:09:19 其他开发

Lisp格式和强制输出

(format t“asdf”)$ b我不明白为什么这个代码在不同的实现中表现不同: $ b 在CLISP中,它的行为与预期的一样,然后打印,然后在SBCL中读取,然后输出。我在网上看了一下,改了一下: $ b $ pre $格式t“asdf”) (强制输出t) (setq var(read)) 这同样适用于CLISP ,但是在SBCL中它仍然读取,然后 ..
发布时间:2018-02-03 17:49:32 其他开发

在open()的缓冲参数和迭代文件时使用硬编码的readahead缓冲区大小之间有什么区别?

受的启发问题,我想知道Python的 open()函数的可选缓冲参数是什么。从查看源,我发现传递给 setvbuf 来设置流的缓冲区大小(并且在没有 setvbuf ,文档确认)。 然而,当你遍历一个文件时,有一个常量叫做 READAHEAD_BUFSIZE ,它似乎定义了一次读取多少数据(这个常量被定义为缓冲 参数涉及 READAHEAD_BUFSIZE 。当我遍历一个文件时,哪一个定义了 ..
发布时间:2017-11-04 21:31:19 Python

如何刷新cin缓冲区?

如何清除C ++中的cin缓冲区? 解决方案 可能: std :: cin.ignore(INT_MAX); 这将读入并忽略一切,直到 EOF 。 (您还可以提供第二个参数,该字符是要读取的字符,直到(例如:'\\\ '忽略一行)。 另外:你可能想做一个: std :: cin.clear(); p> ..
发布时间:2016-10-11 19:53:16 C/C++开发