|
|
|
Сколько в runtime будет создано экземпляров лямбда?
|
|||
|---|---|---|---|
|
#18+
Код: java 1. 2. 3. 4. 5. 6. 7. 1) Экземпляр лямбды в рантайм будет создаваться каждый раз разный или один раз на все контексты? 2) А если убрать контекст? Код: java 1. 2. 3. 3) Что быстрее будет работать, данный подход или же создавать new ForkJoinTask(ctx) для ForkJoinPool? Что дешевле - создание нового экземпляра лямбда или новой RecursiveTask / RecursiveAction? 4) Можно ли переиспользовать отработанный ForkJoinTask, например, вернув его состояние в первоначальное? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2016, 12:46 |
|
||
|
Сколько в runtime будет создано экземпляров лямбда?
|
|||
|---|---|---|---|
|
#18+
Суть вопросов одна - избавиться от необходимости создавать новые объекты для отправки блока кода с контекстом в пул потоков. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2016, 12:58 |
|
||
|
Сколько в runtime будет создано экземпляров лямбда?
|
|||
|---|---|---|---|
|
#18+
iPOJO1) Экземпляр лямбды в рантайм будет создаваться каждый раз разный или один раз на все контексты? 2) А если убрать контекст? 1) Новый на каждый вызов, даже если контекст один 2) Тогда будет один экземпляр Поведение может зависеть от реализации JVM http://stackoverflow.com/a/27524543 iPOJO3) Что быстрее будет работать, данный подход или же создавать new ForkJoinTask(ctx) для ForkJoinPool? Что дешевле - создание нового экземпляра лямбда или новой RecursiveTask / RecursiveAction? Надо мерять. ForkJoin это таки ещё и Join. http://www.javaworld.com/article/2078440/enterprise-java/java-tip-when-to-use-forkjoinpool-vs-executorservice.html?page=2 iPOJO4) Можно ли переиспользовать отработанный ForkJoinTask, например, вернув его состояние в первоначальное? reinitialize()? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2016, 13:06 |
|
||
|
Сколько в runtime будет создано экземпляров лямбда?
|
|||
|---|---|---|---|
|
#18+
iPOJOСуть вопросов одна - избавиться от необходимости создавать новые объекты для отправки блока кода с контекстом в пул потоков. А что создавать объекты дорого? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2016, 13:07 |
|
||
|
Сколько в runtime будет создано экземпляров лямбда?
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, спасибо. BlazkowiczНадо мерять. ForkJoin это таки ещё и Join. Кто-то уже делал небольшие шаги в этом направлении. https://habrahabr.ru/post/313350/ BlazkowicziPOJO4) Можно ли переиспользовать отработанный ForkJoinTask, например, вернув его состояние в первоначальное? reinitialize()? Отлично! Тогда можно сделать пул тасков и брать отработанные. Опять-таки, блокирующая очередь будет дороже, чем каждый раз new ForkJoinTask() ? А что, если сделать пул на неблокирующих очередях, причём на каждый поток пула своя очередь тасков? BlazkowiczА что создавать объекты дорого? Перфекционизм, м@ть его. Десять тысяч запросов в секунду, сотни операций на один запрос, за минуту работы 60 млн. новых ненужных объектов =( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2016, 13:26 |
|
||
|
Сколько в runtime будет создано экземпляров лямбда?
|
|||
|---|---|---|---|
|
#18+
iPOJOПерфекционизм, м@ть его. Десять тысяч запросов в секунду, сотни операций на один запрос, за минуту работы 60 млн. новых ненужных объектов =( Так создание множества маложивущих объектов это крейсерский режим работы GC. Я думаю хуже будет если ненужный объект переживает сборку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2016, 13:32 |
|
||
|
Сколько в runtime будет создано экземпляров лямбда?
|
|||
|---|---|---|---|
|
#18+
iPOJOПерфекционизм, м@ть его. Десять тысяч запросов в секунду, сотни операций на один запрос, за минуту работы 60 млн. новых ненужных объектов =( Код должен быть простой. Ты НЕ УГАДАЕШЬ как лучше, пока не попробуешь. Все оптимизации пишутсяпод простой код. Так что выверты могут работать дольше :D ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.11.2016, 13:48 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=39341427&tid=2123536]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
52ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
| others: | 199ms |
| total: | 354ms |

| 0 / 0 |
