- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 iPad 应用程序,在 Beta 测试之前我正在 Instruments 中对其进行测试。除了一个内存泄漏,我已经摆脱了所有内存泄漏,而且我找不到任何关于它的信息。我不知道该怎么做,因为我的代码从未提到泄漏对象,它是 NSDecimalNumberPlaceHolder 的一个实例。
当然我使用的是 NSDecimalNumber。我为每个用户操作创建 2 个小数,每次我运行一个应用程序循环(对两个 NSDecimalNumbers 执行一些数学运算)时,我都会生成这个 NSDecimalPlaceHolder 事物的四个实例。因为我不知道它是如何创建的,所以我不知道如何释放或释放它,以免一遍又一遍地产生这些 16 btye 泄漏。
有没有可能这些不是真正的泄漏?
我已经运行了 XCode Analyzer,它没有报告任何问题。
我正在做的是:
我将一个十进制数从我的 Controller 发送到我的模型 (analyzer_),该模型执行操作并发回结果。
[[self analyzer_] setOperand:[NSDecimalNumber decimalNumberWithString:anotherStringValue]];
setOperand 方法如下所示:
-(void)setOperand:(NSDecimalNumber*)theOperand
{
NSLog(@"setOperand called");
operand_ = theOperand;
//[operand_ retain];
请注意,如果我不保留 operand_“某处”,我会遇到 BAD_ACCESS 崩溃。我目前保留并稍后在操作数和先前提供的操作数 (queuedOperand_) 进行操作时释放它。例如:
{
[self performQueuedOperation];
queuedOperation_ = operation;
queuedOperand_ = operand_;
}
return operand_;
[operand_ release];
performQueuedOperation 在哪里:
-(void)performQueuedOperation
{
[operand_ retain];
if ([@"+" isEqualToString:queuedOperation_])
{
@try
{
operand_ = [queuedOperand_ decimalNumberByAdding:operand_];
}
@catch (NSException *NSDecimalNumberOverFlowException)
{
//viewController will send decimal point error message
}
<etc for the other operations>
}
如果不清楚,请告诉我。谢谢。
最佳答案
在 Instruments 中尝试 Heapshot,请参阅:When is a Leak not a Leak?
如果仍然有指向不再使用的内存的指针,则不是泄漏,而是丢失内存。我经常使用 Heapshot,它真的很棒。同时在 Allocations 工具中打开记录引用计数并向下钻取。这是屏幕截图:
关于ios - NSDecimalNumber 占位符泄漏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7630195/
我的 DateTime 对象使用 DateTime.Now 分配了本地时间。我想知道一旦夏令时开始/结束,这个对象是否会给出正确的当前本地时间。或者我需要解决方法吗? 最佳答案 是的,DateTime
假设我需要“特定类别中可用的项目数量”与“所有项目的数量”的比率。请考虑这样的 MySQL 表: /* mysql> select * from Item; +----+------------+--
我有这张 table http://codepen.io/MetCastle/pen/lxceL我想使用 jQuery 根据 input type="number" 隐藏/显示列。表示整个列: Pro
想要制作一个看起来像这样的网格,其中 div/section 以百分比表示。 margin 在任何地方都是一样的。 http://www.ladda-upp.se/bilder/giefekcmgwm
这将返回 1(又名 TRUE) SELECT DATE_SUB(NOW(), INTERVAL 24*100 HOUR) = DATE_SUB(NOW(), INTERVAL 100 DAY); 10
我一直在尝试在 UIScrollView 中获取 UIView 的转换后的 CGRect。如果我不放大它就可以正常工作,但是一旦我放大,新的 CGRect 就会发生变化。这是让我接近的代码: CGFl
对于家庭作业,我需要在不使用内置模 (%) 运算符的情况下返回 num1 除以 num2 后的余数。我能够通过以下代码让大多数测试通过,但我仍然坚持如何解释给定数字的 -/+ 符号。我需要保留 num
我用 Javascript 创建了一个倒数计时器;它是成功的,期望未完成。事实上,从数学上讲,它是正确的,但是谷歌浏览器的浏览器设置“暂停”(因为没有更好的术语)SetInterval/Timeout
我有两个 的,每个都设置为其容器宽度的 45%。有没有办法使 居中?使得它们在容器的左右两侧有相同的空间,并且它们之间也有空间。 一开始我只是做了每个 50% 并且有 padding: 0px 2
我是一名优秀的程序员,十分优秀!