问题标签 [unbuffered]

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.

0 投票
3 回答
5451 浏览

c - ANSI C 中的无缓冲 I/O

为了教育和编程实践,我想编写一个简单的库,可以处理原始键盘输入,并“实时”输出到终端。

我想尽可能地坚持使用 ansi C,我只是不知道从哪里开始这样的事情。我已经进行了几次谷歌搜索,99% 的结果使用库,或者用于 C++。

我真的很想让它在 Windows 中运行,然后在我有时间的时候将它移植到 OSX。

0 投票
13 回答
138172 浏览

c - 如何避免使用 getchar() 按 Enter 键仅读取单个字符?

在接下来的代码中:

我必须按Enter打印我输入的所有字母getchar,但我不想这样做,我想做的是按下字母并立即看到我介绍的字母重复而不按Enter。例如,如果我按下字母“a”,我想在它旁边看到另一个“a”,依此类推:

但是当我按'a'时什么也没有发生,我可以写其他字母并且副本仅在我按时出现Enter

我怎样才能做到这一点?

我正在使用cc -o example example.cUbuntu 下的命令进行编译。

0 投票
1 回答
530 浏览

linux - Linux/Unix I/O 类型

我要介绍一下Linux/Unix I/O:文件 I/O、标准 I/O、缓冲/非缓冲 I/O 和格式化/非格式化 I/O

我不确定如何订购这些类型的 I/O 才有意义。

这是我的尝试:

  • 文件输入/输出
    • 无缓冲 I/O
    • 缓冲 I/O
      • 标准输入/输出
      • 格式化/未格式化的 I/O

它是否正确 ??

无论如何谢谢

0 投票
1 回答
298 浏览

php - 读取 url 内容,无缓冲 php

这个函数读取一个 url

但我想无缓冲地阅读它,所以我可以阅读无缓冲的 cgi 脚本,例如,在加载时对其进行分析?我如何在 php 中执行此操作?

0 投票
2 回答
307 浏览

stdout - 缓冲标准输出 (STDOUT)

默认情况下,STDOUT 是无缓冲的吗?如果不是,它的默认缓冲类型是什么

谢谢

0 投票
1 回答
730 浏览

python - 如何在 Python 中创建无缓冲 I/O 多路复用器?

我想要一个控制台 python 脚本,它将在标准输入上接收输入并立即将其同时写入标准输出和标准错误。这应该在输入和输出上都没有缓冲。

我该怎么做?一旦你知道诀窍,我认为这是非常基本的。

0 投票
3 回答
2306 浏览

windows - perl 中的无缓冲 IO

我有一个 Perl 应用程序,它使用 open 和 print 调用将日志写入文件。

但是,在机器突然关闭期间,日志不会保存到文件中。因此,在搜索了几个地方之后,建议使用两个选项来进行无缓冲 IO(即将文本写入磁盘,而不是将其保存在缓存中然后刷新):

  1. 系统打开系统写入
  2. $| = 1;

我已经尝试了这两个选项,但它不起作用。我在异常关机前几秒钟所做的任何写入都会丢失。

有什么方法可以让我几乎可以确定地在 Perl 中完成无缓冲 IO?我正在使用 Perl 5.8.3 运行 Windows 7 64 位。

编辑:我搜索了如何让 Windows 执行无缓冲 IO,这就是它可以做到的!称呼

  1. CreateFile与 FILE_FLAG_NO_BUFFERING 用于 dwFlagsAndAttributes 参数。但是,这需要考虑内存对齐问题(即文件访问缓冲区应该是扇区对齐的;应用程序通过调用GetDiskFreeSpace来确定扇区大小)
  2. 使用WriteFile将数据写入文件。此写入将是无缓冲的,而不是进入缓存,而是直接进入磁盘。
  3. 最后,调用FlushFileBuffers来刷新与文件关联的元数据。

有人可以为这 3 个调用提供来自 Perl 的 Win32 API 的帮助。

0 投票
0 回答
906 浏览

c++ - 实现 FUSE 文件系统:iostream、FILE* 还是普通文件描述符?

我用 C++ 实现了一个小的只读 FUSE 文件系统,它从某个多文件存档中读取数据。我使用 iostreams(实际上boost::filesystem::ifstream)来读取文件。现在我想知道这是否是一个明智的决定。

首先,iostreams 的错误消息很可怕(请参阅我的另一个问题),我不能简单地返回errno我的文件操作引起的。但其次我想知道在实现 FUSE 文件系统时使用无缓冲 IO 是否更好(不是用于读取存档索引,而是在读取文件时 - 它是一个未压缩的存档,其中文件永远不会被拆分为多个存档文件)。因为读取文件的应用程序会根据需要进行缓冲。这种缓冲只是不必要的开销吗?

(提升)iostream 的速度有多快?好吧,我可以毫无问题地从已安装的存档中播放 WAV 文件,但我仍然想知道 iostreams 是否会在我真的不需要时增加不必要的开销(它们提供的唯一优点是它们超出范围时会自动关闭文件) .

0 投票
1 回答
2130 浏览

syntax - CoffeeScript 中的无缓冲多行注释?

如果我错了,请纠正我,在 CoffeeScript 中获得无缓冲(不输出到 .js)注释的唯一方法是

###多行的缓冲区注释

但是没有办法获得无缓冲的多行注释吗?

谢谢。

0 投票
1 回答
276 浏览

ruby - 无缓冲读取文件——Ruby

我需要一种从文件中读取的方法,但每次都从磁盘重新加载数据。这怎么能做到,没有File.reopen每次都使用?