草庐IT

geometric-arc

全部标签

ios - 如何强制在 ARC 应用程序下调用 didReceiveMemoryWarning

我听说didReceiveMemoryWarning最有可能在您持续泄漏分配时被调用。然而,在ARC下,我一直认为分配的局部变量在我们传递它们实例化的block后被释放。这些泄漏是否必须全部是属性?如果在我的应用程序中调用了didReceiveMemoryWarning,我正在尝试创建正确的恢复,但到目前为止我还看不到它。我正在寻求帮助以了解何时调用它,以及这些泄漏是否必须是属性与局部变量(在ARC下)? 最佳答案 只需使用模拟器硬件菜单中的“模拟内存警告”命令即可。如果你想通过代码来做到这一点,你可以使用下面的代码(注意这是私有(

ios - 使用 ARC 的线程安全设计

首先让我引用AppleThreadingProgrammingGuide中的一章:BeAwareofThreatstoCodeCorrectnessWhenusinglocksandmemorybarriers,youshouldalwaysgivecarefulthoughttotheirplacementinyourcode.Evenlocksthatseemwellplacedcanactuallylullyouintoafalsesenseofsecurity.Thefollowingseriesofexamplesattempttoillustratethisproblemb

ios - 在 ARC 下使用 dispatch_write 将 NSData 写入后台唯一文件

我正在尝试创建一个具有唯一名称的文件并在后台向其写入数据。mktemp说只要有可能,就应该使用mkstemp(),因为它没有竞争条件。使用mkstemp会产生一个打开的文件描述符,因此dispatch_write似乎很明显。现在NSData必须使用dispatch_data_create包装在dispatch_data_t中。必须注意释放需要释放的内存,保留必须保留的内存。在ARC下,这不太明显。+(void)createUnique:(NSData*)contentname:(NSString*)nameextension:(NSString*)extensioncompletion

objective-c - 使用Core Graphics在Objective-C(IOS)中绘制角度/角度/"Conical"/"Arcing"渐变

我正在尝试绘制一个“圆锥形”/“弧形”渐变(我不知道什么才是正确的术语)(Photoshop称它为“角度”渐变——你的好邻居stackoverfloweditor)使用Objective-C(IOS),与下面的图像非常相似thread.在谷歌搜索和互联网搜索无果后,我决定在这里寻求帮助。关于我正在尝试做的事情的一些背景知识。我的目标是创建一个自定义UIView,它是圆形进度条,基本上是一个环,有点类似于TweetBotiPhone应用程序中的事件指示器(当您拖动刷新时显示,可以在操作中看到here,视频中大约17-18秒,在iPhone屏幕上方)。我希望进度指示器(圆环的填充)是一个简

ios - 转换为 ARC 后出现 "deallocated while key value observers were still registered with it."错误

我正在使用这个类:https://github.com/alexleutgoeb/ALPickerView自从我转换为ARC后,我在点击pickerview几次后收到此错误:2011-10-1814:10:19.424MappingApp[3398:10d03]Aninstance0x73c7cd0ofclassCustomTapGestureRecognizerwasdeallocatedwhilekeyvalueobserverswerestillregisteredwithit.Observationinfowasleaked,andmayevenbecomemistakenly

objective-c - 使用从 NSOperation 子类 (ARC) 到主线程的 block 回调

这个问题类似于thisquestion引入了自动引用计数。我有一个NSOperation子类,它接受一个block参数,该block参数旨在作为对主(UI)线程的回调。我的初衷是在后台执行一些操作,然后使用dispatch_async和主队列执行回调。原前提:@interfaceMySubclass:NSOperation{@protecteddispatch_block_t_callback;}-(id)initWithCallback:(dispatch_block_t)callback;@end@implementationMySubclass-(void)main{//Dost

objective-c - 使用 ARC,如何正确设置具有副作用的属性?

我有一个使用自动引用计数的类。在类里面,我有一个如下所述的属性。当我为类(class)设置提醒时,我希望发生更改按钮标题的副作用。这是我的代码:在.h文件中:@property(nonatomic,strong)Reminder*reminder;在.m文件中:@synthesize提醒;-(void)setReminder:(Reminder*)reminder_{//whatelsedoIneedtodohere?reminder=reminder_;if(!reminder.useSound.boolValue){onOffButton.title=NSLocalizedStri

objective-c - NSData 内存未释放 - ARC

我遇到了一个我似乎无法弄清楚的问题。进行了大量搜索,并尝试了大约50种不同的变体,但到目前为止还没有成功。这是我的困境。我有3种方法。一个在我的PageView对象加载时调用,另一个在用户进行更改时调用,最后一个在用户离开页面时调用。第一种方法:-(void)captureInitialLinesTexture{@autoreleasepool{self.initialLinesTextureCaptured=TRUE;GLubyte*buffer=(GLubyte*)malloc(1024*1024*4*sizeof(GLubyte));glPixelStorei(GL_PACK_A

objective-c - 从调用无弧 C 函数的 ARC 方法中释放对象

我正在使用基于ARC的项目中不符合ARC的库。该库中的一个函数返回一个保留的UIImage*对象。有没有办法使用__bridge属性让ARC知道这一点,以便它可以管理返回对象的保留计数?我试过:UIImage*returnedImage;returnedImage=(__bridge_transferUIImage*)functionThatReturnsAUIImage();但它不允许我将UIImage*转换为UIImage*)。我也试过:returnedImage=(UIImage*)(__bridge_transfervoid*)functionThatReturnsAUIIma

ios - 如何以编程方式为非 ARC xcode 项目中的特定文件启用 ARC?

在某些情况下,我需要为几个非ARCxcode项目中的许多文件启用ARC。我不想完全转换为ARC,只需要使用arc启用几个文件。有许多解决方案使用XCode控制台将-fobjc-arc标志添加到编译源中的特定文件。但是我在多个xcode项目中有太多文件,无法通过XCode单独更改它。有没有一种方法可以让我以编程方式修改构建阶段设置。我发现很少有像这样的帖子TutorialorGuideforScriptingXCodeBuildPhasesPer-filecompilerflagsinXcodeprojecttemplate这两个都是很好的解决方案,但我需要设置一种机制,以便我可以编写脚