gpt4 book ai didi

c - 当我从TCP套接字读取时发生了多少内存副本

转载 作者:行者123 更新时间:2023-11-30 16:41:03 26 4
gpt4 key购买 nike

我的应用程序运行read(sockfd, buffer, BUFFSIZE, 0)。我知道内核需要在幕后做一些复制工作。 buffer分配在栈上会发生多少次内存拷贝,如果buffer分配在堆上会发生变化吗?

谢谢。

最佳答案

无论缓冲区位于还是堆栈上,内存副本的数量始终相同。区别仅在于您复制数据的内存位于何处。

如果是在堆栈上,您可能会进入堆栈溢出,您的程序将出现未定义的行为,而如果您在堆上执行此操作,如果您在不需要内存后不释放内存,则可能会导致内存泄漏不再了。

关于c - 当我从TCP套接字读取时发生了多少内存副本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46405763/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com