タグ付けされた質問 「heap」

ヒープ(データ構造)は、深さに関して順序付けられたツリーです。ヒープは、動的割り当て用に確保されたプロセスメモリを参照することもできます。

14
ヒープ破損エラーをデバッグする方法は?
Visual Studio 2008で(ネイティブ)マルチスレッドC ++アプリケーションをデバッグしています。一見ランダムな状況で、「Windowsがブレークポイントをトリガーしました...」というエラーが発生します。これは、ヒープ。これらのエラーは、すぐにアプリケーションをクラッシュさせるとは限りませんが、すぐにクラッシュする可能性があります。 これらのエラーの大きな問題は、破損が実際に発生した後にのみ表示されるため、特にマルチスレッドアプリケーションでは、追跡とデバッグが非常に困難になることです。 これらのエラーの原因は何ですか? どうすればデバッグできますか? ヒント、ツール、方法、啓蒙...は大歓迎です。
165 c++  windows  debugging  heap 

9
C ++のスタック、静的、およびヒープ
私は検索しましたが、これらの3つの概念をよく理解していません。動的割り当て(ヒープ内)を使用する必要があるのはいつですか?その実際の利点は何ですか?静的およびスタックの問題は何ですか?ヒープに変数を割り当てずにアプリケーション全体を作成できますか? 他の言語には「ガベージコレクター」が組み込まれているので、メモリを気にする必要はありません。ガベージコレクターは何をしますか? このガベージコレクタを使用して実行できなかったメモリを自分で操作するにはどうすればよいでしょうか。 誰かがこの宣言でそれを私に言ったら: int * asafe=new int; 「ポインタへのポインタ」があります。どういう意味ですか?それは次の点で異なります。 asafe=new int; ?


5
ベクトルが割り当てられると、それらはヒープまたはスタック上のメモリを使用しますか?
次の説明はすべて正しいですか? vector<Type> vect; //allocates vect on stack and each of the Type (using std::allocator) also will be on the stack vector<Type> *vect = new vector<Type>; //allocates vect on heap and each of the Type will be allocated on stack vector<Type*> vect; //vect will be on stack and Type* will be …
151 c++  stl  vector  stack  heap 



8
配列、ヒープ、スタック、値のタイプ
int[] myIntegers; myIntegers = new int[100]; 上記のコードで、新しいint [100]はヒープ上に配列を生成していますか?C#を介してCLRで読んだことから、答えは「はい」です。しかし、私が理解できないのは、配列内の実際のintに何が起こるかです。それらは値の型なので、たとえば、ボックスにボックス化する必要があると思います。たとえば、myIntegersをプログラムの他の部分に渡すと、常に残っているとスタックが乱雑になります。 。それとも私は間違っていますか?私はそれらがボックス化されるだけで、配列が存在する限りヒープ上に存在すると思います。
134 c#  arrays  memory  stack  heap 

30
「zend_mm_heap破損」の意味
突然、アプリケーションでこれまでにないほどの問題が発生しました。Apacheのエラーログを確認することにしたところ、「zend_mm_heapが破損しています」というエラーメッセージが見つかりました。これは何を意味するのでしょうか。 OS:Fedora Core 8 Apache:2.2.9 PHP:5.2.6

10
C ++でのスタックとヒープの適切な使用法
私はしばらくプログラミングをしてきましたが、ほとんどがJavaとC#でした。実際に自分でメモリを管理する必要はありませんでした。私は最近C ++でプログラミングを始めましたが、いつスタックに格納するか、いつヒープに格納するかについて少し混乱しています。 非常に頻繁にアクセスされる変数はほとんど使用されない変数であるスタックとオブジェクトに格納する必要があり、大きなデータ構造はすべてヒープに格納する必要があると私は理解しています。これは正しいですか、それとも間違っていますか?


7
Android Gradleはオブジェクトヒープ用に十分なスペースを予約できませんでした
Android Studio 1.1.0をインストールしました。新しいAndroidアプリケーションの起動やインポートなど、まだ何もしていません。どういうわけかそれは何かを構築しようとしていて、同期エラーをスローします。 エラー:デーモンプロセスを開始できません。この問題は、デーモンの誤った構成が原因である可能性があります。たとえば、認識されないjvmオプションが使用されています。http://gradle.org/docs/2.2.1/userguide/gradle_daemon.htmlにあるデーモンのユーザーガイドの章を参照してください。 詳細については、次のプロセス出力をお読みください。 VMの初期化中にエラーが発生しましたオブジェクトヒープ用の十分なスペースを予約できませんでしたJava仮想マシンを作成できませんでした。 確認済みgradle.org/.../gradle_daemon.htmlですが、問題の解決に役立つ情報が見つかりませんでした。 8 GBの物理メモリと他のプログラムを実行していないので、メモリの問題ではありません。
91 android  gradle  jvm  heap 


5
プリミティブのJava配列はスタックまたはヒープに格納されていますか?
私はこのような配列宣言を持っています: int a[]; これaがプリミティブint型の配列です。この配列はどこに保存されますか?ヒープまたはスタックに格納されていますか?これはintプリミティブ型であり、すべてのプリミティブ型がヒープに格納されるわけではありません。

11
割り当てられたメモリでfree()を使用しないことは問題ありませんか?
私はコンピュータ工学を勉強していて、いくつかの電子工学コースを持っています。私はそれを使用して回避することができる(これらのコースの)私の教授の2から、聞いたfree()(後に機能をmalloc()、calloc()おそらく割り当てられたメモリ空間は、他のメモリを割り当てるために再び使用されることはありませんので、など)。つまり、たとえば、4バイトを割り当ててから解放すると、4バイトのスペースができて、再び割り当てられない可能性があります。つまり、穴ができます。 私はそれがおかしいと思います:あなたはそれを解放せずにヒープにメモリを割り当てるおもちゃではないプログラムを持つことはできません。しかし、私には、それぞれにmalloc()がなければならないほど重要である理由を正確に説明する知識がありませんfree()。 だから:使用せmalloc()ずに使用することが適切であるかもしれない状況はありfree()ますか?そうでない場合は、どうすればこれを教授に説明できますか?

8
メモリ割り当て:スタックとヒープ?
スタックとヒープの間のメモリ割り当ての基本と混同しています。標準の定義(誰もが言うこと)に従って、すべての値型はスタックに割り当てられ、参照型はヒープに入れられます。 次の例を考えてみましょう。 class MyClass { int myInt = 0; string myString = "Something"; } class Program { static void Main(string[] args) { MyClass m = new MyClass(); } } さて、メモリ割り当てはc#でどのように発生しますか?MyClass(つまりm)のオブジェクトは完全にヒープに割り当てられますか?つまり、int myIntとstring myStringの両方がヒープに行くのだろうか? または、オブジェクトは2つの部分に分割され、スタックとヒープの両方のメモリ位置に割り当てられますか?
83 c#  .net  stack  heap 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.