問題タブ [libobjc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
244 参照

objective-c - libobjc でリークしたメモリを示す Valgrind

ここで欠けているものを追跡しようとしています。

CentOs5 で動作しています。

これを単純な単純なプログラムに煮詰めましたが、それでもメモリリークが発生します。これが Valgrind のバグなのか、libobjc のバグなのかはわかりません。

main.m

そして、それをコンパイルしてgccでリンクします

実行するvalgrind mainとメモリリークが発生します

libobjc をリンクしない (-lobjc を除外する) と、メモリ リークは発生しません。

アイデア?

0 投票する
1 に答える
247 参照

objective-c - このインライン アセンブリが libobjc で release、retain、および autorelease を呼び出しているのはなぜですか?

以下のスニペットは、Apple の ObjC ランタイム (libobjc) ソース コードから取得したものです。これは正確には何を意味するのだろうか。(あまりGoogle対応ではありません、申し訳ありません)

アップデート:

bypass_msgSend_release() の呼び出しが生成するものは次のとおりです。

0 投票する
2 に答える
15011 参照

ios - iOS クラッシュ libobjc.A.dylib objc_msgSend

Crashlytics で以下に示すクラッシュが発生しています。

これがアプリ内のどこから来るのか理解できません。残念ながら、私はこのクラッシュを自分で生成することはできませんでしたが、実際に発生しています。

アプリ名への参照は 1 つだけであり、これがアプリのどこから来ているかを示すものは何もありません。

アプリのどこでこれが発生したかに関するデータがないという事実は、didFinishLaunchingWithOptions 中に問題が発生したことを示しているため、実際には詳細を表示するのに十分な距離に達していませんか? または、問題の場所を示すデータがログに不足している他の理由がありますか?

これを追跡する方法を誰か教えてもらえますか?


このスレッドに寄せられたコメントに関連して、以下を追加します。このコードは、通常のラベル設定など以外の主な UI 関連の変更であり、問​​題は見られません。

以下のコードは、AppDelegate.m、DidFinishLaunchingWithOptions に追加されました。

クラッシュは私が再現できたものではなく、毎日発生するのはほんの一握りのケースですが、タイミングの問題である可能性があり、UI がメッセージを受信できないのではないかと思っています。

ご意見を歓迎します。同意する場合は、代わりにコードを ViewController の ViewDidLoad に移動する必要があります。