标签: buffer

当我将数据写入阻塞套接字时会发生什么,比另一边读取更快?

假设我将数据写得非常快[我将内存中的所有数据]写入阻塞套接字.进一步假设对方将读取数据非常慢[如每次读取之间的睡眠时间为1秒].

在这种情况下,写作方面的预期行为是什么?写操作块是否会在另一侧读取足够的数据,否则写入会返回错误,如连接重置?

sockets buffer tcp blocking

21
推荐指数
2
解决办法
2万
查看次数

Java中可用的最佳可调整大小的循环字节缓冲区是什么?

我需要Java中的字节缓冲类来实现单线程使用.我应该能够在缓冲区的后面插入数据并在前面读取数据,摊销成本为O(1).缓冲区应该在它满时调整大小,而不是抛出异常或其他东西.

我自己可以写一个,但如果在标准的Java包中不存在,我会感到非常惊讶,如果没有,我希望它存在于一些经过良好测试的公共库中.

你会推荐什么?

java buffer byte

20
推荐指数
1
解决办法
1万
查看次数

char数组中可以有多少个字符?

#define HUGE_NUMBER ???

char string[HUGE_NUMBER];
do_something_with_the_string(string);
Run Code Online (Sandbox Code Playgroud)

我想知道什么是我可以添加到char数组的最大数量,而不会冒任何潜在的内存问题,缓冲区溢出等风险.我想让用户输入,也许最大可能.

c memory arrays buffer char

20
推荐指数
3
解决办法
4万
查看次数

如何在nodejs Buffer中存储整数?

nodejs Buffer非常膨胀.但是,它似乎是为了存储字符串.构造函数要么采用字符串,字节数组,要么分配大小的字节.

我使用的是Node.js的0.4.12版本,我想在缓冲区中存储一个整数.不是integer.toString(),但整数的实际字节.有没有一种简单的方法可以做到这一点,而不需要遍历整数并进行一些小问题?我能做到这一点,但我觉得这是别人在某个时候必须面对的问题.

buffer node.js

20
推荐指数
3
解决办法
3万
查看次数

有没有办法偷看stdin缓冲区?

我们知道stdin默认情况下是缓冲输入; 证据就是使用"保留数据"的任何机制stdin,例如scanf():

int main()
{
    char c[10] = {'\0'};
    scanf("%9s", c);
    printf("%s, and left is: %d\n", c, getchar());
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

./a.out
你好,
你好,左边是10

10 当然是换行...

我一直很好奇,有没有办法"偷看" stdin缓冲区而不删除那里可能存在的东西?

编辑
一个更好的例子可能是:

scanf("%9[^.]", c);
Run Code Online (Sandbox Code Playgroud)

输入"at.ct"后,现在我还有"data"(ct\n)stdin,而不仅仅是换行符.

c buffer stdin peek

20
推荐指数
1
解决办法
2万
查看次数

std :: cout不会打印

有什么情况什么时候std::cout << "hello"不起作用?我有ac/c ++代码,但是std::cout不打印任何东西,甚至不是常量字符串(例如"hello").

有没有办法检查是否cout能够/无法打开流?还有像一些成员函数good(),bad()...但我不知道哪一个是适合我.

c++ debugging buffer iostream cout

20
推荐指数
4
解决办法
5万
查看次数

最后填充空字节的字节数组:如何有效地复制到较小的字节数组

有:

[46][111][36][11][101][55][87][30][122][75][66][32][49][55][67][77][88][0][0][0][0][0][0][0][0][0][0][0][0][0][0][0][0][0][0][0][0][0][0][0]
Run Code Online (Sandbox Code Playgroud)

想:

[46][111][36][11][101][55][87][30][122][75][66][32][49][55][67][77][88]
Run Code Online (Sandbox Code Playgroud)

我有一个字节数大小为8192的数组,从第一个数组中的某个索引开始,直到数组的结尾,字节都是空字节.因此,数组末尾可能有6000个字节的值和2196个空字节.如何有效地创建一个大小的新数组(6000)并复制这些字节?注意:我不知道有多少空字节或带有值的字节.

java arrays buffer

20
推荐指数
3
解决办法
2万
查看次数

无法在Vim中使用Ctrl-O的反转

我想反过来

  • Ctrl+O

成为

  • Shift+ Ctrl+O

原来的反面是

  • Ctrl+I

如何将Vim 中CTRL+ 的反转重新映射OShift+ CTRL+ O

vim buffer keyboard-shortcuts

19
推荐指数
2
解决办法
7511
查看次数

显示当前缓冲区的编号

我有一个简单的要求:我想显示我正在编辑的缓冲区的编号.我不想输入:buffers(或等效)但是这个号码会显示在我的状态栏中,还有文件名,当前列信息等.

有没有办法做到这一点?在这一点上,内置帮助并不是很有启发性.

vim buffer statusline

19
推荐指数
2
解决办法
7898
查看次数

如何刷新缓冲的log4j FileAppender?

在log4j中,当使用具有BufferedIO = true和BufferSize = xxx属性的FileAppender(即启用了缓冲)时,我希望能够在正常关闭过程中刷新日志.关于如何做到这一点的任何想法?

java buffer log4j

18
推荐指数
3
解决办法
3万
查看次数

标签 统计

buffer ×10

java ×3

arrays ×2

c ×2

vim ×2

blocking ×1

byte ×1

c++ ×1

char ×1

cout ×1

debugging ×1

iostream ×1

keyboard-shortcuts ×1

log4j ×1

memory ×1

node.js ×1

peek ×1

sockets ×1

statusline ×1

stdin ×1

tcp ×1