草庐IT

gc_allocator

全部标签

ios - @synthesize of 'weak' 属性只允许在 ARC 或 GC 模式下第一次编译 urbanship

基本上,我有一个运行正常的IOS应用程序。同时按照http://docs.urbanairship.com/build/ios.html#ios-push-getting-started中的说明进行操作,我到达了“RegisterYourDevice”部分,要求我进行编译。尝试在xCode5中构建代码后,我收到以下错误“@implementationUAPushSettingsAddTagViewController@synthesizeof'weak'propertyisonlyallowedinARCorGCmode”。注意:ARC模式未使用。 最佳答案

ios - NSArray.array/.new/@[]/alloc-init 之间的区别

似乎有不同的实例化NSArrays的方法(对于NSDictionary和其他一些也是一样的)。我知道:[NSArray数组][NSArraynew]@[][[NSArrayalloc]init]出于可读性原因,我通常坚持使用[NSArrayarray],但它们之间有什么区别,它们真的都做同样的事情吗? 最佳答案 它们的结果都是一样的,你得到一个新的空不可变数组。不过,这些方法具有不同的内存管理含义。ARC最终没有区别,但在ARC之前,您必须使用正确的版本或发送适当的保留、释放或自动释放消息。[NSArraynew],[[NSArra

linux - 在/proc/sockstat 中,哪些 TCP 状态算作 'inuse' 哪些算作 'alloc'?

例如,在/proc/net/sockstat中,CLOSE_WAIT中的TCP套接字是否被计为“inuse”或“alloc”?在内核源代码net/ipv4/proc.c中,我看到sockstat_seq_show从/proc/net/sockstat获取信息时被调用。但是我看不出有什么区别套接字被分配(alloc)而不是“使用”[me@myhostname~]$cat/proc/net/sockstatsockets:used481TCP:inuse52orphan1tw66alloc62mem12UDP:inuse11mem5UDPLITE:inuse0RAW:inuse0FRAG:

java - 很长的 GC 周期是否可能导致 "Connection refused"异常?

当连接到我们的Tomcat服务器时,我们偶尔会看到ConnectException消息“连接被拒绝”。这些可能是由长GC周期引起的吗?(我们正在激活相关的JVM标志以获取更多有关GC周期的日志消息,但我还是想在这里问这个问题) 最佳答案 “连接被拒绝”意味着您已到达远程主机,但它决定不允许您连接。如果GC是问题所在,您会收到“连接超时”错误。 关于java-很长的GC周期是否可能导致"Connectionrefused"异常?,我们在StackOverflow上找到一个类似的问题:

pointers - 参数对 UnsafeMutablePointer<Type>.alloc() 有什么意义?

假设我想创建一个指向Int的指针在swift。据我所知,我会做this:letpointer=UnsafeMutablePointer.alloc(1)pointer.memory=100println(pointer)//prints0x00007f8672fb7eb0println(pointer.memory)//prints100现在,当我调用UnsafeMutablePointer.alloc(1),什么是1表示?我假设它的数量是Ints从指针地址开始在内存中分配。所以1将分配8个字节,2将分配16个字节,依此类推...这是真的吗?如果是这样,Swift为UnsafeMuta

java - 获取 I/art : Explicit concurrent mark sweep GC freed

我正在启动服务=>后台服务,并开始检查“新线程”中的文件,在日志中我得到以下内容,服务/应用程序暂停。日志:I/art:显式并发标记清除GC释放了25935(1686KB)个AllocSpace对象,13(903KB)个LOS对象,39%空闲,13MB/22MB,暂停649us,共43.569ms只是对SDcard中MyData中的文件进行扫描,其中包含一堆图片(约20张)。**Scan=获取图片名称并将它们保存到String中。 最佳答案 这意味着垃圾收集器正在执行其工作并释放内存。如果您经常(或始终)看到这种情况,那么您可能分配

java - 如何模拟Android GC杀死应用程序

我需要在接下来的情况下测试应用程序的序列化\反序列化:应用程序长时间处于后台(空闲模式)并被GC杀死;应用在后台,由于资源(内存\cp)不足被GC杀死;在某些设备上,可以通过启动1-2个游戏来模拟。但是在具有1GB内存的四核设备上,要玩4-10个重度游戏非常非常困难,而且会花费很多时间。我尝试实现一些模拟资源加载的演示:创建位图数组创建对象数组推出大量服务开展大量Activity但没有结果,应用程序仍然有效(即使在旧设备上),我的演示因OutOfMemoryException而崩溃。如何在演示应用程序中模拟高负载?谢谢! 最佳答案

java - C++:普遍使用 shared_ptr<> 是否等同于 gc?

这只是一个学术问题(我永远不会在实际代码中这样做):如果我要在我的代码中普遍使用shared_ptr,其行为是否等同于像Java这样的gc收集语言?如果不是,其行为与gc嵌入式语言有何不同?与gc嵌入式语言相比,哪种C++构造会产生等效的行为?注意:在实际编码中,我非常喜欢使用RAII和严格所有权,而不是使用任何智能指针。我也知道其他不太通用的指针unique_ptr会更有效率。这个问题只是对智能指针等价性的查询。 最佳答案 不,有几个重要的区别:只要有循环引用,就会发生内存泄漏。垃圾收集器可以处理循环,引用计数不能。您将避免任何停

java - 测量花费在 GC 上的时间

假设我正在测试一个Java服务器应用程序。我知道完成测试需要多少时间。现在我想知道在该测试期间在GC上花费了多少。我该怎么做? 最佳答案 IguessthatwhenGC(GarbageCollector)isworkingtheapplicationstopsandresumeswhenGCfinishes我认为这不是一个可靠的假设。您确定垃圾收集器没有与您的应用程序代码并行工作吗?要测量收集垃圾所花费的时间,您可以查询GarbageCollectorMXBean.试试这个:publicstaticvoidmain(String[

java - 寻找内存泄漏,VisualVM : "No GC root found". 接下来是什么?

我有一个内存转储,是我从一个垂死的应用程序中创建的。它已消耗所有可用堆(-Xmx1024m)。它使用com.gargoylesoftware.htmlunit.WebClient来抓取网页。每分钟发出几个http请求,几天后就死了。正如我从转储中看到的那样,它有大约1750个HtmlPage类实例,每个实例都带有相关对象的色调,包括已抓取页面的全部内容。我不明白为什么HtmlPage没有被垃圾回收。我已经调查了实例引用,但我没有看到任何我的代码持有对它的引用,VisualVM说“找不到GC根”。据我了解,这应该意味着该对象符合gc的条件,但它不起作用。该应用程序作为一个简单的独立进程运