草庐IT

缓冲区

全部标签

iphone - 为什么我们只使用 aurioTouch 项目中的第一个缓冲区

我正在调查aurioTouch2示例代码。我注意到,当我们分析音频数据时,我们只使用该数据的第一个缓冲区,而不使用其他缓冲区。在voidFFTBufferManager::GrabAudioData(AudioBufferList*inBL)函数中:UInt32bytesToCopy=min(inBL->mBuffers[0].mDataByteSize,mAudioBufferSize-mAudioBufferCurrentIndex*sizeof(Float32));memcpy(mAudioBuffer+mAudioBufferCurrentIndex,inBL->mBuffer

iphone - 如何防止 iOS 上的格式字符串攻击和缓冲区溢出?

Apple的SecureCodingGuide文档提供了以下方面的指导:格式化字符串攻击缓冲区溢出(无论如何对我来说)不清楚的是如何在使用NSString时防止格式字符串攻击和缓冲区溢出。我该如何防御此类攻击?我可以申请任何类别来防止这种情况发生吗?是否有我可以使用的“安全”NSString等效项? 最佳答案 当您将数据放入NSString(或NSMutableString)时,缓冲区溢出通常不是问题,因为当您创建NSString,你必须告诉它你给它多少数据,它会自动分配足够的私有(private)存储空间来保存你给它的数据。坚持使

iOS Safari 和 chrome 上的 Javascript Canvas 缓冲区/性能低下

我正在尝试通过将像素直接绘制到imageData缓冲区来更新javascriptCanvas。基本上我会在每次mousemove/touchmove事件后更新imageData缓冲区上的所有像素,并尝试获得最佳性能。背景:我正在开发一个基于emscripten的应用程序,其中Canvas上的绘图完全由“native”代码逐像素绘制。我在这个问题中给出的例子是我重现我的问题的一个更简单的例子。我目前遇到了两个性能问题:在iOSsafari上(在iPadair上测试):绘图函数以31fps的速度调用,但屏幕上的Canvas渲染延迟(视觉上,我会说它以最大10fps的速度更新,加上一些间隔0

网络攻防技术——缓冲区溢出攻击(基于服务器)

一、实验主题   缓冲区溢出被定义为程序试图将数据写入缓冲区边界之外的情况。恶意用户可以利用此漏洞更改程序的流控制,从而导致恶意代码的执行。本实验的目的是让学生对这种类型的漏洞有实际的了解,并学习如何利用攻击中的漏洞。   在这个实验中,学生将得到四个不同的服务器,每个服务器运行一个具有缓冲区溢出漏洞的程序。他们的任务是开发一种利用该漏洞的方案,并最终获得这些服务器上的根权限。除了攻击之外,学生还将尝试几种对抗缓冲区溢出攻击的对策。学生需要评估这些方案是否有效,并解释原因。本实验涵盖以下主题:•缓冲区溢出漏洞和攻击•函数调用中的堆栈布局•地址随机化,非可执行堆栈和StackGuard•Shel

使用双缓冲技术解决winform窗体控件卡顿(dataGridView加载数据缓慢)

背景:在做C/S项目中,做好的窗体出现了页面加载控件缓慢,放大、缩小窗体之后,窗体加载卡顿,以及数据渲染缓慢。可以利用双缓冲技术去解决这个问题。那么什么是双缓冲?百度介绍:我们看电视时,看到的屏幕称为OSD层,也就是说,只有在OSD层上显示图像我们才能看到。现在,我需要创建一个虚拟的、看不见但是可以在上面画图(比如说画点、线)的OSD层,我称之为offscreen(后台缓冲区)。这个offscreen存在于内存中,我们在上面画图,这个offscreen上面的东西可以显示在OSD层上,需要一个创建这个offscreen的函数,返回这个offscreen的句柄(整型指针)、宽度、高度、指向新建of

hadoop - 记录对于内存缓冲区来说太大。通过 TEZ 使用 Hive 的 ORC 表时出错

我们正在尝试从HIVE(1.2.1)中的“ORC”表中读取数据,并将该数据放入带有“TextInputFormat”的表中。原始数据中的某些条目太大,在运行过程中出现以下错误:org.apache.hadoop.hive.ql.metadata.HiveException:org.apache.tez.runtime.library.common.sort.impl.ExternalSorter$MapBufferTooSmallException:Recordtoolargeforin-memorybuffer.Exceededbufferoverflowlimit,bufferOv

java - 为什么 Hadoop API FSDataInputStream 读取小于缓冲区大小?

我想读取hadoop分布式文件系统上的一个二进制文件。我正在使用FSDataInputStream(它扩展了DataInputStream)。我有长度为"len"的缓冲区。我使用readBytes=stream.read(buffer)方法将文件中的“len”个字节读入缓冲区。但是实际读取的字节数(readBytes)小于缓冲区大小(len),即使我知道文件中存在“len”字节数。那么为什么FSDataInputStream读取的字节数少于我要求它读取的字节数?有什么想法吗? 最佳答案 DataInputStream.read(by

socket缓冲区之SO_SNDBUF和SO_RCVBUF

目录1.socket缓冲区简介2.UDP缓冲区解析2.1UDP缓冲区设置3.TCP缓冲区解析3.1TCP缓冲区设置4.发送和接收缓冲区监测?4.1.ss命令监测4.2.netstat命令监测 5.思考?5.1 用户设置通过setsockopt函数的缓冲区大小和通过getsockopt函数获取缓冲区大小为什么会相差2倍数?5.2缓冲区大小和带宽时延积(BDP)的关系?1.socket缓冲区简介 图1socket缓冲区socket缓冲区是指操作系统内核为了提高网络传输效率而设置的一块内存区域,它在数据传输过程中起到了缓存、排队、流量控制等作用。具体来说,socket缓冲区分为发送缓冲区和接收缓冲区

Hadoop 缓冲与流式处理

有人可以向我解释一下HadoopStreaming和Buffering之间的区别吗?这是我在Hive中阅读的上下文:在连接的每个map/reduce阶段,序列中的最后一个表通过reducer流式传输,而其他表则被缓冲。因此,通过组织表使得最大的表出现在序列的最后,有助于减少reducer中缓冲连接键的特定值的行所需的内存。例如在:SELECTa.val,b.val,c.valFROMaJOINbON(a.key=b.key1)JOINcON(c.key=b.key1) 最佳答案 在reduce侧连接中,来自多个表的值通常被标记以在r

hadoop - 环形缓冲区和队列之间的区别

环形(循环)缓冲区和队列有什么区别?两者都支持FIFO,那么在什么情况下我应该在队列上使用环形缓冲区,为什么?与Hadoop的相关性map阶段使用ringbuffer来存储中间键值对。选择队列的原因是什么? 最佳答案 RingBuffer是一个数组,用作队列它将分别维护读取和写入位置。当它到达数组的末尾时,它将从数组的开头继续。RingBuffer在Queue上的使用。环形缓冲区速度很快。当您对要存储的数据量进行硬性限制时,RingBuffer很有用。看看这个article由JakobJenkov提供更多详细信息。查看相关的SE问题