小编Gyo*_*par的帖子

NSMutableData如何分配内存?

当我运行以下代码时,它会慢慢占用我的内存,甚至开始使用swap:

 long long length = 1024ull * 1024ull * 1024ull * 2ull; // 2 GB

 db = [NSMutableData dataWithLength:length];

 char *array = [db mutableBytes];

 for(long long i = 0; i < length - 1; i++) {
      array[i] = i % 256;
 }
Run Code Online (Sandbox Code Playgroud)

如果我在没有for循环的情况下运行它,则根本不使用内存:

 long long length = 1024ull * 1024ull * 1024ull * 2ull;
 db = [NSMutableData dataWithLength:length];
 char *array = [db mutableBytes];
 /* for(long long i = 0; i < length - 1; i++) {
      array[i] = i % …
Run Code Online (Sandbox Code Playgroud)

error-handling memory-management objective-c

4
推荐指数
1
解决办法
1035
查看次数