![](/img/trans.png)
[英]Why doesn't omitting “case” in switch…case throw error or warning in XCode?
[英]Xcode doesn't throw warning for capturing strong self
我有一個障礙,可能會導致一些問題。 通常,Xcode通過向行[self方法]旁邊發出警告來向我展示可能發生潛在問題的地方,但是現在它不起作用。
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
PNTabCell *collectionViewCell = [collectionView dequeueReusableCellWithReuseIdentifier:@"PNTabCell" forIndexPath:indexPath];
collectionViewCell.didPressedCloseButton = ^()
{
[self didCloseTab];
};
return collectionViewCell;
}
但是我的問題是,如何以這種[自我方法]為潛在的泄漏線自動開啟警告通知
捕捉堅強的自我不是問題。 創建保留周期是一個問題。 這會形成保留周期嗎? 看起來不像。 它只是一個markFilePathAsActive-> block-> self鏈。 一旦您調用的方法完成,self就會被釋放。 因此,似乎沒有任何理由發出警告。
在我看來,這似乎不是一個保留周期,因此我認為不需要警告。
而且我不認為Xcode在默認情況下可以使用正常的警告系統(黃色警告)來計算出所有保留周期,並且我不認為您可以做到這一點。
但是您可以嘗試不時運行分析器。 非常強大。 轉到產品->分析。 這將對您的代碼進行靜態分析,並檢測可能的內存泄漏,死存儲,不調用視圖超級生命周期方法等。 看看https://developer.apple.com/library/ios/recipes/xcode_help-source_editor/Analyze/Analyze.html 。
您也可以按照以下說明嘗試將分析儀更新為較新的版本: http : //clang-analyzer.llvm.org/xcode.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.