すべてのオブジェクトがヒープメモリを必要とし、スタック上のすべてのプリミティブ/リファレンスがスタックメモリを必要とすることを知っています。 ヒープ上にオブジェクトを作成しようとしたときにメモリ不足が発生すると、JVMはヒープ上にjava.lang.OutOfMemoryErrorを作成し、それをスローします。 つまり、暗黙的に、これは起動時にJVMによって予約されたメモリがあることを意味します。 この予約メモリが使い果たされるとどうなるでしょう(間違いなく使い果たされます。以下の説明をお読みください)。java.lang.OutOfMemoryErrorのインスタンスを作成するのに十分なメモリがJVMにヒープにない場合はどうなりますか? ぶら下がっているだけですか?または、OOMのインスタンスにnullメモリがないため、彼は私を投げますnewか? try { Object o = new Object(); // and operations which require memory (well.. that's like everything) } catch (java.lang.OutOfMemoryError e) { // JVM had insufficient memory to create an instance of java.lang.OutOfMemoryError to throw to us // what next? hangs here, stuck forever? // …
たとえば、次のような設定があるとします。 phd/code/ phd/figures/ phd/thesis/ 歴史的な理由により、これらにはすべて独自のgitリポジトリがあります。ただし、少し単純にするために、それらを1つにまとめたいと思います。たとえば、現在、2つのセットの変更を行い、次のようなことを行う必要があるとします。 cd phd/code git commit cd ../figures git commit 実行するだけで(今)いいです cd phd git commit サブモジュールを使用したり、サブリポジトリから取得したりする方法はいくつかあるようですが、それは私が探しているよりも少し複雑です。少なくとも、私は満足しています cd phd git init git add [[everything that's already in my other repositories]] しかし、それはワンライナーのようには見えません。git私を助けることができる何かがありますか?