草庐IT

缓冲池

全部标签

java - awt双缓冲

awt是否可以实现双缓冲(在java中)?目前,我知道swing不应该与awt一起使用,所以我不能使用BufferStrategy和诸如此类的东西(我已经有一些用awt编写的代码,我不想在swing中重写)。如果awt可以实现双缓冲,我是否必须手动编写缓冲区?与swing不同,awt似乎没有相同的内置双缓冲功能。如果我必须手写代码,是否有好的教程可供引用?还是对于新手程序员来说,改用swing更容易/更明智?很抱歉这个多步骤问题。感谢您的宝贵时间:) 最佳答案 这很容易在网络上得到解答。只需搜索“doublebufferawt”,您

java - 是否存在不带缓冲的 OutputStreamWriter?

我需要转换char的流进入byte的流中s,即我需要来自java.io.Writer的适配器java.io.OutputStream的接口(interface),支持任何有效的Charset我将把它作为配置参数。然而,java.io.OutputStreamWriter类有一个隐藏的secret:sun.nio.cs.StreamEncoder它委托(delegate)给下面的对象会创建一个8192字节(8KB)的缓冲区,即使您不要求它这样做也是如此。问题是,在OutputStream我插入了一个包装器,它需要计算正在写入的字节数,以便在输出特定数量的字节后立即停止源系统的执行。如果O

java - 兰特流的高性能缓冲

我的代码会消耗大量(目前为数百万,最终为数十亿)相对较短(5-100个元素)的随机数数组,并对它们进行一些不太费力的数学运算。随机数是随机的,理想情况下我想在多核上生成它们,因为随机数生成占我运行时间的50%以上。但是,我很难以不比单线程方法慢的方式分配大量小任务。我的代码目前看起来像这样:for(inti=0;i我采取的没有奏效的方法是:1+个线程填充ArrayBlockingQueue,我的主循环使用并填充数组(这里的装箱/拆箱是killer级操作)在执行数学的非依赖部分时使用Callable生成vector(产生future)(看起来间接的开销超过了我获得的任何并行性yield)

java - 使用 Java 创建 .zip 存档的缓冲区大小是多少?

我使用此代码创建一个包含文件列表的.zip:ZipOutputStreamzos=newZipOutputStream(newFileOutputStream(zipFile));for(inti=0;i0;){zos.write(buffer,0,read);}fis.close();zos.closeEntry();}zos.close();我不知道zip算法和ZipOutputStream是如何工作的,如果它在我读取并发送到“zos”所有数据之前写了一些东西,结果文件的字节大小可能与我选择另一个不同缓冲区大小。换句话说,我不知道算法是不是这样的:读取数据-->处理数据-->创建.

Java:将pdf文件从URL读取到小程序中的字节数组/字节缓冲区

我想弄清楚为什么这个特定的代码片段对我不起作用。我有一个小程序,它应该读取.pdf并使用pdf渲染器库显示它,但由于某种原因,当我读入位于我服务器上的.pdf文件时,它们最终被损坏了。我已经通过再次写回文件对其进行了测试。我已尝试在IE和Firefox中查看小程序,但出现了损坏的文件。有趣的是,当我尝试在Safari(适用于Windows)中查看小程序时,文件实际上没问题!我知道JVM可能不同,但我仍然迷路了。我用Java1.5编译过。JVM是1.6。读取文件的片段如下。publicstaticByteBuffergetAsByteArray(URLurl)throwsIOExcept

Java:从具有缓冲输入的随机访问文件中读取字符串

我以前从未有过JavaIOAPI的亲body验,现在我真的很沮丧。我很难相信它有多么奇怪和复杂,以及完成一项简单的任务会有多么困难。我的任务:我有2个位置(起始字节,结束字节),pos1和pos2。我需要读取这两个字节之间的行(包括起始字节,不包括结束字节)并将它们用作UTF8String对象。例如,在大多数脚本语言中,它将是一个非常简单的1-2-3行(在Ruby中,但对于Python、Perl等,它基本上是相同的):f=File.open("file.txt").seek(pos1)whilef.posJavaIOAPI很快就会变得糟糕;)事实上,我看到了两种从常规本地文件读取行(以

java - 如何使 Swig 正确包装在 C 中修改为 Java Something-or-other 的 char* 缓冲区?

我正在尝试包装一些遗留代码以便在Java中使用,我很高兴看到Swig能够处理头文件并且它生成了一个几乎可以工作的优秀包装器。现在我正在寻找能让它真正发挥作用的深层魔法。在C中我有一个看起来像这样的函数DLL_IMPORTintDustyVoodoo(char*buff,intlen,char*curse);此函数返回的这个整数是错误代码,以防失败。参数是buff是一个字符缓冲区len是缓冲区中数据的长度curse包含调用DustyVoodoo的结果的另一个字符缓冲区所以,你可以看到这是怎么回事,结果实际上是通过第三个参数返回的。另外len令人困惑,因为它可能是两个缓冲区的长度,它们在调

redis 缓冲区详解(性能优化缓冲区优化)

目录前言客户端输入缓冲区输出缓冲区集群缓冲区全量复制缓冲区问题增量复制缓冲区问题前言在我的《Redis为啥那么快》这篇文章中,详细总结了Redis为啥那么快。今天当我要详细阐述Redis的缓冲区时,意识到应该加上Redis的缓冲区。我们假设没有Redis的缓冲区,客户端向服务端发送数据,必须等待Redis的服务端去处理,大家都知道Redis是单线程的,虽然这么说不是很准确,为了描述,也只好这么说了。如果没有及时处理,那客户端不就阻塞了吗,有多个客户端,redis阻塞的时间不是更长了吗?现在我们有了缓冲区,客户端就可以把命令提交到客户端缓冲区,然后去输出缓冲区接收数据的返回,服务端直接从客户端读

java - 需要更快的方法来获取缓冲图像的每个像素的 RGB 值

获取BufferedImage每个像素的RGB值的最快方法是什么?现在我正在使用两个for循环获取RGB值,如下面的代码所示,但是获取这些值的时间太长,因为嵌套循环总共运行了479999次图片。如果我使用16位图像,这个数字会更高!我需要一种更快的方法来获取像素值。这是我目前正在尝试使用的代码:BufferedImagebi=ImageIO.read(newFile("C:\\images\\Sunset.jpg"));intcountloop=0;for(intx=0;x 最佳答案 我不知道这是否有帮助,我还没有测试过,但你可以通

java - FileWriter 是否缓冲?

我想知道FileWriter是否被缓冲。在this所以问题,似乎是,但是在this所以问题似乎不是(每次调用write(..)时都是系统调用)。所以,基本上,阅读那两个问答,我有点困惑。有谁能解释清楚吗?编辑:通过阅读解决问题this我引用相关部分的API:Eachinvocationofawrite()methodcausestheencodingconvertertobeinvokedonthegivencharacter(s).Theresultingbytesareaccumulatedinabufferbeforebeingwrittentotheunderlyingoutp