|
|
|
потоки и статические методы
|
|||
|---|---|---|---|
|
#18+
Nik683есть набор команд в памяти (последовательность 1 и 0 в конечном итоге). Вы опять сами себя путаете. Не важно где физически располагаются команды. Ремарка про 1 и 0, вообще детский сад. К чему она здесь? Nik683И мне не понятно как это набор команд (если "физически" он один на всех) может одновременно выполнятся 100 потоками, даже если у нас например 8 процессоров. Физически одновременно выполняется только то количество потоков, сколько есть доступных ядер CPU. Остальные потоки в это время дожидаются освобождения CPU. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2013, 13:48:37 |
|
||
|
потоки и статические методы
|
|||
|---|---|---|---|
|
#18+
бBlazkowicz, ну в общем понятно. в реальном времени все упирается в количество процессоров, а паралельная работа -весьма условна, обман зрения . и java тут ни при чем) спасибо.я получил ответ на свой вопрос- использование "статического" или "динамического" класса разными потоками не приведет к взаимной задержке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2013, 13:55:02 |
|
||
|
потоки и статические методы
|
|||
|---|---|---|---|
|
#18+
Nik683использование "статического" или "динамического" класса разными потоками не приведет к взаимной задержке. Только на этапе первоначальной загрузки этого класса, если быть точным. ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2013, 13:56:28 |
|
||
|
потоки и статические методы
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, ))стоп. хотел уже выходит .. что имеется ввиду под "только при первоначально загрузки этого класса" -не могли бы пояснить хотя бы немного.. ? а то не усну...))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2013, 14:00:05 |
|
||
|
потоки и статические методы
|
|||
|---|---|---|---|
|
#18+
Nik683 что имеется ввиду под "только при первоначально загрузки этого класса" -не могли бы пояснить хотя бы немного.. ? а то не усну...))) Классы в Java загружаются только тогда когда они действительно нужны ("отложеная загрузка", "ленивая загрузка"). Но в одном ClassLoader-е может быть только один экземпляр конкретного класса. Поэтому если вдруг двум разным потокам понадобился один и тот же класс одновременно, то один из этих потоков будет ждать, пока другой загрузит класс и выполнит проверки и блоки статической инициализации. Процесс загрузки описан в JLS. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2013, 14:03:47 |
|
||
|
потоки и статические методы
|
|||
|---|---|---|---|
|
#18+
Nik683, это вам надо брать конкретный процессор и разбираться с его микрокодом. В общих чертах - для быстроты сегмент исполняемого кода считывается в кеш ядра процессора и там выполняется, то есть "физически" каждое ядро работает со своим кусочком кода, причем и тут - куча вариантов. Например, процессор может команды распараллелить, запустить на всякий случай вычисления по всем веткам, а потом выбрать результат той, на которую программа действительно вышла, и т.д. Но "снаружи" этого не видно - все выглядит так, как будто ядро процессора последовательно исполняет команды из оперативной памяти. Так что при одновременном выполнении команд думать, где они расположены, не стоит. Все сюрпризы начинаются при одновременном доступе к данным, например, если в ваших статических методах будут использоваться статические переменные. Но вопрос был не про это ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2013, 14:06:16 |
|
||
|
потоки и статические методы
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2013, 14:06:33 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38500005&tid=2127991]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
61ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
2ms |
| others: | 219ms |
| total: | 378ms |

| 0 / 0 |
