memory-management

    -1热度

    1回答

    我已经在virtualbox中创建了空间,所以你可以看到这个免费的55GB。 但是,当我想删除分区2和分区5,我收到一条错误消息:rror deleting partition /dev/sda5: warning partition dev/sda5 is being used are you sure you want to continue,我无法做到这一点。 我试图用sudo fdisk

    0热度

    1回答

    我有一个永无止境的数据流进入我正在写的程序。我想拥有一个固定大小的缓冲区阵列,它只存储该流的最新观察数据。但是,对我而言,如何以有效的方式实现这一点并不明显。 什么到目前为止,我所做的是第一分配长度牛逼的缓冲区,并放置在连续顺序进入观察从顶部到达时:data_0->index 0, data_1->index 1…data_T->index T. ,直到缓冲区已满,工作正常。但是,当观察data_

    1热度

    1回答

    我想我理解堆栈是如何工作的,当变量被移动时会发生什么,但是我找不到这个问题的答案。让我解释一下: 当一个新的作用域被输入/创建时,会在堆栈顶部获取一定量的内存。堆栈指针指向这个内存。它表示堆栈的当前大小。当范围被留下时,通过使堆栈指针返回到前一个位置来释放内存。 在C++ 11中移动语义或更高版本将一些数据的所有权从一个变量移动到另一个变量。这避免了复制数据,因为保存数据的内存保持不变。移动之后,

    0热度

    2回答

    我正在写一个函数,释放一个指针数组,但是当我调用该函数,得到运行时错误'双免费或腐败(fasttop)'。该函数的目的是清除数组,该数组从输入文件中获取数据,如果该文件已经打开并且再次调用fillArray函数。 这是导致问题的功能: void freeArray(Country ** g_countryArray) { for (int i = 0; i < g_arrsz; ++i

    0热度

    1回答

    清除数组达到目的后清除数组有用吗? $mediaUgly = simplexml_load_file('media.xml'); $mediaNice = json_decode(json_encode($mediaUgly),true); XML文件大约有50kb。我不知道有多大$ mediaUgly将在内存中,但我不需要它了,只要我有$ mediaNice,和更高版本我将从$ media

    0热度

    1回答

    我有一个QObject子类(具有QML注册)称为ToReturn和QML单,在C++定义的,称为MySingleton。后者提供这样的功能: Q_INVOKABLE ToReturn* get_toReturn() { return new ToReturn(); } 当我打电话get_toReturn从QML,我是负责稍后再打destroy()方法返回的对象呢?或者有没有办法使用

    -2热度

    1回答

    Java编译器是否优化,如果不是必要的话,不会创建新对象/引用? 例如 public class Foo { public void foo(Object[] data) { for(int i=0; i<data.length; i++) { Object d = data[i]; // <-- here bar(d);

    1热度

    2回答

    我有一个使用Tomcat Webserver构建的Java应用程序。 使用Java任务控制我知道在压力下,GC非常占优势。每个GC周期中,CPU都非常高。 我想知道的是,每个GC循环都在做什么,特别是我想知道它正在推广哪个对象,以及哪个对象正在释放。对于被释放的对象,我想知道,不仅是它们是什么类型,而且它们是在哪里创建的。只知道我有很多字节[]或字符串,显然没有帮助,因为有很多地方可以创建这些地方

    -3热度

    1回答

    代码正在工作它削减第一个单词,并把它,最后,文本。我不明白代码中的一行,比方说我的字符串是“hello world”。 当我使用代码“* p ++ ='\ 0';”此行之前 :p: "world" s: "hello world" 此行之后:p: "world" s: "hello" 为什么会改变?并削减世界的话? 的完整代码: void func(char *s) {

    1热度

    1回答

    我使用下面的代码列出目录中的文件,然后将它们放入一个名为filename_list的长字符串中。该逻辑是 使用的strdup(“”)的环路 之前分配一个零字符,空终止字符*使用的realloc()来做到这一点,其保留增加其大小在每个迭代现有的内容。我通过将旧的长度添加到文件名的长度来计算新缓冲区的时间。 我使用strcat()将文件名附加到缓冲区。 它工作正常,直到它试图调用realloc()为导