2014-02-10 4 views
-1
  1. В какую часть памяти входят статические переменные и имена классов ? Является ли он в области класса/метода или в какой-либо другой области?память/класс площадь & многопоточность

  2. Где и в какую часть памяти загружена инструкция разных методов?

  3. Имеет ли каждый поток свою собственную область стека или у них есть отдельный стек, а также отдельная область класса/метода?

  4. Какие инструкции действительно имеют «метод запуска» класса Thread?

Пример кода:

class A { 
    static int a=5; //where is this static a stored to? 

    public void a() { 
     System.out.prinln("hello"); //where is this instruction loaded to? 
    } 

    public static void b() { 
     System.out.prinln("hi"); //where is this instruction loaded to? 
    } 
} 

Есть другая область памяти для статических методов и не статические методы?

+1

В одном очень много вопросов. И на большинство из них можно ответить с небольшим количеством поисковых запросов (что, вероятно, вернет вас к SO) ... – assylias

ответ

1

Относительно # 3: Каждый поток имеет свой собственный стек.

Невозможно ответить на другие вопросы, потому что все они зависят от платформы JVM/base.

0

С точки зрения программиста, все, что вам нужно знать, это то, что он работает, и обычно он отлично работает. С точки зрения JVM это очень зависит от реализации и может варьироваться в зависимости от того, где работает ваш код. Но в конце - как сказано - это не имеет значения, потому что код будет выполняться точно так же, независимо от того, где он работает.

Смежные вопросы