问题标签 [buffering]

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 投票
2 回答
13391 浏览

c# - C# 中的 StreamReader 和缓冲区

我对 StreamReader 的缓冲区使用有疑问。在这里: http: //msdn.microsoft.com/en-us/library/system.io.streamreader.aspx你可以看到:

“从流中读取时,使用与流的内部缓冲区大小相同的缓冲区更有效。”。

根据此博客,StreamReader 的内部缓冲区大小为 2k,因此我可以使用Read()避免Read(Char[], Int32, Int32).

此外,即使文件很大,我也可以构造 StreamReader 传递缓冲区的大小

那么外部缓冲区需要什么?

0 投票
4 回答
1052 浏览

php - PHP在while循环中回显问题

我使用while循环读取了一个csv文件:

我想跳过第一行,因为这是标题行,我想在屏幕上显示“跳过第一行”。

问题是因为它在一个while循环中打印出“标题行...跳过”这里显示的一堆时间:

我应该怎么做,它只打印一次?它与php的输出缓冲有关吗?

0 投票
2 回答
8133 浏览

php - PHP 的 ob_flush() 导致错误

ob_flush()当我在本地主机(通过 MAMP)上调用 PHP函数时,出现以下错误:

注意:ob_flush() [ref.outcontrol]:刷新缓冲区失败。没有要刷新的缓冲区。

我能找到的唯一解决方案是在它前面加上前缀@,但这对我来说似乎不是一个真正的解决方案。是什么导致了问题?

0 投票
2 回答
11359 浏览

java - JPanel 上的活动绘图之上的 JTextFields,线程问题

有没有人尝试过使用 Swing 构建一个适当的多缓冲渲染环境,在该环境之上可以添加 Swing 用户界面元素

在这种情况下,我在背景上绘制了一个动画红色矩形。背景不需要每帧都更新,所以我将它渲染到 BufferedImage 上并仅重绘清除矩形先前位置所需的部分。请参阅下面的完整代码,这扩展了@trashgod 在上一个线程中给出的示例,here

到目前为止,一切都很好; 动画流畅,CPU占用率低,无闪烁。

然后我将一个 JTextField 添加到 Jpanel(通过单击屏幕上的任何位置),并通过单击文本框内部来关注它。现在,每次光标闪烁时,清除矩形的先前位置都会失败,请参见下图。

我很好奇是否有人知道为什么会发生这种情况(Swing 不是线程安全的?图像被异步绘制?)以及在什么方向寻找可能的解决方案。

这是在 Mac OS 10.5、Java 1.6 上

JPanel 重绘失败
(来源:arttech.nl

0 投票
5 回答
1848 浏览

php - 在 PHP 中关闭连接但继续执行脚本

任何人都知道如何关闭连接(除了flush()?),但之后继续执行一些代码。

我不希望客户看到页面完成后可能发生的漫长过程。

0 投票
1 回答
555 浏览

object - 没有缓冲的 Quicktime 对象嵌入

我有一个站点 [此处][链接已删除](仅限 IE8 和 Google Chrome 5)。

我想知道 Quicktime 对象是否有办法在用户单击播放按钮之前不开始缓冲?

我希望将来插入其他电影文件并将它们全部缓冲是不合理的,除非无法完成此操作。

谢谢你。

我找到了这个。似乎不可能。

0 投票
2 回答
2154 浏览

php - 通过点击返回按钮防止用户在注销后重新登录

我正在使用一个 PHP 登录脚本,该脚本向用户询问用户名和密码。

一旦经过身份验证,程序就会存储一个会话值。注销时,会话值设置为空白。

注销后,我想避免让用户多次点击后退按钮并投注允许查看数据屏幕或意外重新登录。

我正在使用会话,将经过验证的用户重定向到新页面。我还使用 ob_start、ob_flush 和 ob_end_clean 来防止错误或重定向。

问题:这真的安全吗?这是一种常见的方法吗?
缓冲有替代方案吗?

下面是一个小的概念验证。

0 投票
1 回答
2104 浏览

perl - 如何立即接收命令输出?

我正在使用 perl 反引号语法来运行一些命令。我希望将命令的输出写入文件并打印到标准输出。我可以通过在反引号字符串的末尾添加 a 来完成第一个>,但我不知道如何在生成输出后立即打印输出。如果我做类似的事情

command仅在完成执行后才打印输出。

谢谢,戴夫

0 投票
2 回答
394 浏览

c++ - 缓冲区欠载逻辑问题,线程教程?

好的,我尝试了各种标题,但都失败了(所以如果有人想出更好的标题,请随时编辑:P)

我有以下问题:我正在使用 API 来访问我没有编码的硬件,将库添加到我需要从 API 接口继承的 API 中,并且 API 可以完成所有工作。

我输入了那个 API,一个音乐生成器库,问题是提到的 API 只在缓冲区为空时调用音乐库,并要求硬编码的数据量(正好 1024*16 个样本......不知道为什么)。

这意味着音乐生成器库,无法使用所有 CPU 潜力,在播放音乐时,即使音乐库跟不上,CPU 使用率仍然很低(如 3%),因此在部分音乐中也有复杂的东西,缓冲区不足(即:声卡播放缓冲区中空的区域,因为音乐库函数尚未返回)。

调整硬编码的数字,只会使软件在某些机器上工作,而不是在其他机器上工作,这取决于几个因素......

所以我想出了两个解决方案: 用一些新的缓冲区逻辑来破解 API,但我在这方面没有想到任何东西。

或者是我真正想到的逻辑:让音乐库有自己的线程,它将有自己的独立缓冲区,它会一直填充,当 API 调用音乐库获取更多数据时,而不是生成,它会将数据从那个单独的缓冲区复制到声卡缓冲区,然后继续生成音乐。

我的问题是,虽然我有几年的编程经验,但我总是避免多线程,我什至不知道从哪里开始......

问题是:有人可以找到另一种解决方案,或者将我指向一个可以为我提供有关如何实施我的线程解决方案的信息的地方吗?

编辑:

我不是在阅读文件,而是在生成或计算音乐,明白吗?这不是 .wav 或 .ogg 库。这就是为什么我提到 CPU 时间,如果我可以使用 100% CPU,我将永远不会出现欠载,但我只能在程序意识到缓冲区即将结束和实际结束之间的短时间内使用 CPU缓冲区,这个时间有时小于程序计算音乐所用的时间。

0 投票
4 回答
33398 浏览

java - 我应该缓冲 InputStream 还是 InputStreamReader?

以下两种缓冲方法之间有什么区别(如果有)?