Questions tagged «buffer»

缓冲区是为将数据从一个地方移到另一个地方而临时存储数据而保留的内存区域。通常这样做是为了加快具有显着延迟的过程,例如写入磁盘,打印机或其他物理设备。在设备准备好接受输出之前,就已经准备好将输出发送到设备,因此将其移至缓冲区,这样发送程序就不必继续等待。



5
ByteBuffer在Java中有什么用?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 5年前关闭。 改善这个问题 ByteBufferJava 中的示例应用程序是什么?请列出使用此示例的任何示例方案。谢谢!
199 java  buffer  bytebuffer 

11
在Linux中,缓冲区与缓存之间有什么区别?
对我来说,尚不清楚两个Linux内存概念buffer和之间有什么区别cache。我已经阅读了这篇文章,在我看来,它们之间的区别在于有效期政策: 缓冲区的策略是先进先出 缓存的策略是“最近最少使用”。 我对吗? 特别是,我正在查看两个命令:free和vmstat james@utopia:~$ vmstat -S M procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu---- r b swpd free buff cache si so bi bo in cs us sy id wa 5 0 0 173 67 912 0 0 19 59 75 1087 24 4 71 1 james@utopia:~$ free -m …
179 linux  caching  memory  buffer 

9
使用FileInputStream时如何确定理想的缓冲区大小?
我有一个从文件创建MessageDigest(哈希)的方法,我需要对很多文件(> = 100,000)执行此操作。为了使性能最大化,我应该为读取文件设置多大的缓冲区? 大多数人都熟悉基本代码(为防万一,在此重复): MessageDigest md = MessageDigest.getInstance( "SHA" ); FileInputStream ios = new FileInputStream( "myfile.bmp" ); byte[] buffer = new byte[4 * 1024]; // what should this value be? int read = 0; while( ( read = ios.read( buffer ) ) > 0 ) md.update( buffer, 0, read ); …

8
缓冲区是什么意思?
我到处都看到“缓冲”这个词,但是我无法理解它的确切含义。 有人能解释一下外行语言的缓冲是什么吗? 什么时候使用? 如何使用?


11
将屏幕(程序)输出保存到文件
我需要将Screen的整个输出保存到一个文件中,以便以后检查所有内容。 原因是我要通过串行端口转储闪存,并使用Screen与之交互。我想将其保存到文件中以检查内存结构。 我试过了: $: screen /dev/ttyUSB0 115200 >> foo.txt $: screen /dev/ttyUSB0 115200 | tee foo.txt 而且我也尝试过从屏幕上使用bufferfile,但我不知道如何使用它。 有没有简单的方法?

6
在套接字库中调用recv时,我的recv缓冲区应该有多大
我对C语言中的套接字库有一些疑问。这是我在问题中将参考的一小段代码。 char recv_buffer[3000]; recv(socket, recv_buffer, 3000, 0); 我如何确定要使recv_buffer多大?我正在使用3000,但是它是任意的。 如果recv()收到比我的缓冲区大的数据包怎么办? 我怎么知道我是否收到了整个消息而又没有再次调用recv,并且在什么都没收到的情况下让它永远等待? 有没有一种方法可以使缓冲区没有固定的空间,这样我就可以继续添加缓冲区而不必担心空间不足?也许strcat用于连接recv()对缓冲区的最新响应? 我知道很多问题合而为一,但是我将不胜感激。
129 c  sockets  buffer  recv 

5
从vim中的磁盘刷新缓冲区中的所有文件
从磁盘上的版本刷新文件的命令是 :e! 如何对缓冲区中的所有文件执行相同操作? 背景:我需要这样做,因为我正在将git与多个分支一起使用,并且打开了一个包含缓冲区的vim。当我结帐一个分支时,我想刷新一下vim。
123 git  vim  buffer 


4
在Vim中区分两个标签
场景:我已经打开Vim并粘贴了一些文本。我打开第二个标签,:tabe并在其中粘贴其他一些文本。 目标:我想要第三个选项卡,其输出等效于将两个文本都写入文件并使用打开它们vimdiff。 我能找到的最接近的是“将当前缓冲区与文件进行比较”,但是没有找到diff两个打开但未保存的缓冲区。
121 vim  diff  tabs  vimdiff  buffer 

8
如何在Vim中删除多个缓冲区?
假设我有多个文件在Vim中作为缓冲区打开。这些文件有*.cpp,*.h有些是*.xml。我想使用关闭所有XML文件:bd *.xml。但是,Vim不允许这样做(E93:多个匹配...)。 有什么办法吗? 附言:我知道:bd file1 file2 file3行得通。所以,我可以采用某种评估*.xml到file1.xml file2.xml file3.xml?
120 vim  buffer 

6
C char数组初始化
我不确定初始化后通过以下方式在char数组中会有什么。 1. char buf[10] = ""; 2. char buf[10] = " "; 3。char buf[10] = "a"; 对于情况2,我认为buf[0]应该是' ',buf[1]应该是'\0',并且从buf[2]到buf[9]将是随机内容。对于情况3,我认为buf[0]应该是'a',buf[1]应该是'\ 0',并且从buf[2]到buf[9]将是随机内容。 那是对的吗? 对于情况1,会发生什么buf?buf[0] == '\0'从buf[1]到buf[9]将会是随机内容?

5
配管到T型管时强制stdout进行线缓冲
通常,stdout是行缓冲的。换句话说,只要您的printf参数以换行符结尾,就可以期望该行会立即打印出来。使用管道重定向到时,似乎没有这种情况tee。 我有一个C ++程序,a它将始终\n终止的字符串输出到stdout。 当它自己运行(./a)时,所有内容均会按预期正确正确地打印。但是,如果将其通过管道传递到tee(./a | tee output.txt),则在退出之前它不会打印任何内容,这违背了使用的目的tee。 我知道我可以通过fflush(stdout)在C ++程序中的每次打印操作后添加一个来解决此问题。但是,有没有更清洁,更轻松的方法?例如,是否有我可以运行的命令stdout,即使使用管道,该命令也将被强制进行行缓冲?
117 unix  buffer  pipe  stdout  tee 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.