Перейти к публикации
  • Сейчас на странице   Всего пользователей: 1   (0 пользователей, 1 гость)

Rooster

Программирование, т. 7

  

536 пользователей проголосовало

У вас нет прав на голосование в этом опросе, или на просмотр результатов опроса. Пожалуйста, войдите или зарегистрируйтесь для голосования в опросе.

Рекомендованные сообщения

 

 

ты не можешь никаким образом гарантировать очередность выполнения параллельных операций. по определению

:lolpray: 

Мне лень что-то лично тебе доказывать и объяснять, ты уже не в первый раз показываешь свою некомпетентность, ну или не понимание того, о чем я говорю. Мб кому-то тут не похуй будет.

 

Синглтред экзекьютор как раз выполняет раннаблы по одному.

 

Мейн тред ничего не ждет, просто нужен порядок возврата колбеков.

Поделиться сообщением


Ссылка на сообщение
(изменено)

 

как ты вообще пытаешься уместить в одном предложении слова потоки и очередность?

 tBGrPHL.png

В каком порядке таски ушли в воркер в таком их колбек должен быть обработан в мейне.

 

 

А при чем тут вообще синхронизация если вопрос только в каком порядке ты обрабатываешь результаты в мейн треде

 

Если тред 3 закончил раньше других то в чем проблема? ты просто хранишь резалт от треда 3 и ждешь резалт от треда 1

 

Вообще блять не понимаю при чем тут синхронизация

 

ты не можешь никаким образом гарантировать очередность выполнения параллельных операций. по определению

:lolpray:

Мне лень что-то лично тебе доказывать и объяснять, ты уже не в первый раз показываешь свою некомпетентность, ну или не понимание того, о чем я говорю. Мб кому-то тут не похуй будет.

 

Синглтред экзекьютор как раз выполняет раннаблы по одному.

 

Мейн тред ничего не ждет, просто нужен порядок возврата колбеков.

 

 

Ладно поясни нам что такое очередность тред пулов?)


Изменено пользователем Vova

towBCf6.pngimage.png.6f88ac9ad688355eb803ba0b32e309ca.pngimage.png.c05354238865437022b3e4a97a835dbd.pngimage.png.0e8329f2b07e208ae8ef4e3f6878d126.png

 

 

 

Поделиться сообщением


Ссылка на сообщение

Да я тоже не понимаю чего вы до меня доебались, один хуй я вам про фому, вы мне про ерему. Цифры это не потоки лолд  :lolpray:

Поделиться сообщением


Ссылка на сообщение

Дрочат свои потоки а потом в жеппу ебуца


Russia.png.ea080e101222d708d08842dae4ccc684.png USA.png.9b863586cd992fb91bf92ed1de03e4cc.png Israel.png.f27d10a4455f05cd161a8c2c52b8b5e1.png

Поделиться сообщением


Ссылка на сообщение
(изменено)

Да я тоже не понимаю чего вы до меня доебались, один хуй я вам про фому, вы мне про ерему. Цифры это не потоки лолд  :lolpray:

 

Там таски? и один воркер тред?)

 

Поясни плз как они могут закончиться не в том порядке в котором стартовали если воркер тред один


Изменено пользователем Vova

towBCf6.pngimage.png.6f88ac9ad688355eb803ba0b32e309ca.pngimage.png.c05354238865437022b3e4a97a835dbd.pngimage.png.0e8329f2b07e208ae8ef4e3f6878d126.png

 

 

 

Поделиться сообщением


Ссылка на сообщение

 

ты не можешь никаким образом гарантировать очередность выполнения параллельных операций. по определению

:lolpray:

Мне лень что-то лично тебе доказывать и объяснять, ты уже не в первый раз показываешь свою некомпетентность, ну или не понимание того, о чем я говорю. Мб кому-то тут не похуй будет.

 

Синглтред экзекьютор как раз выполняет раннаблы по одному.

 

Мейн тред ничего не ждет, просто нужен порядок возврата колбеков.

 

ебать ты долбоеб конечно, раз считаешь, что коллбеки могут чего-то ждать


Торжество разума в том, чтобы уживаться с теми, у кого этого разума нет. Вольтер.
Чтобы хорошо высыпаться, нужно спать 8 часов в день. И еще столько же ночью.

Поделиться сообщением


Ссылка на сообщение

Ребят поясните за графичек

 

Я уснуть не смогу если не узнаю

 

Там один воркер тред?)


 

 

Цифры это не потоки лолд  :lolpray:
 

 

А что?)


 


ебать ты долбоеб конечно, раз считаешь, что коллбеки могут чего-то ждать

 

Ну а че там TCP/IP надо установить сначала чтобы резалт получить хули 


towBCf6.pngimage.png.6f88ac9ad688355eb803ba0b32e309ca.pngimage.png.c05354238865437022b3e4a97a835dbd.pngimage.png.0e8329f2b07e208ae8ef4e3f6878d126.png

 

 

 

Поделиться сообщением


Ссылка на сообщение

Пиздец, споры про типизацию в скрипте были куда интереснее :lol:


Saying that Java is nice because it works on all OS's is like saying that anal sex is nice because it works on all genders.
 

Поделиться сообщением


Ссылка на сообщение

ебать ты долбоеб конечно, раз считаешь, что коллбеки могут чего-то ждать

 

 

:megapalm: иди нахуй, бтв нихуя не понимаешь, что-то себе вечно додумываешь.

 

 

А что?)

 executorService.submit(() -> {
updateRegions(e.getPlayer(), MovementWay.MOVE, e.getTo(), e);


});

Поделиться сообщением


Ссылка на сообщение

 


ты не можешь никаким образом гарантировать очередность выполнения параллельных операций. по определению

коллбеки и нужны, чтобы никто никого не ждал, и они срабатывали сразу же, как доработают, сами

а раз надо ждать очереди, то твой алгоритм вообще не параллелен, и зачем его вообще тогда делить на потоки?

 

если ты не хочешь чтобы интерфейс подвисал, так выделяй себе четвертый поток, который породит те три, дождется их завершения в нужном порядке безо всяких коллбеков, заберет результат, и будет вливать всё в интерфейс, но сделать это без ожиданий невозможно

 

в худшем случае можно заставить каждого воркера знать о других сотоянии других воркеров, и зависать пока другие не доработают, но это рак, еще возможно и неосуществимый нормально на конкретной платформе

 

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

 

Что как бы не мешает просто хванить резалты того то отработало но дальше обрабатывать их в порядке очередности 


towBCf6.pngimage.png.6f88ac9ad688355eb803ba0b32e309ca.pngimage.png.c05354238865437022b3e4a97a835dbd.pngimage.png.0e8329f2b07e208ae8ef4e3f6878d126.png

 

 

 

Поделиться сообщением


Ссылка на сообщение
(изменено)

 

ты не можешь никаким образом гарантировать очередность выполнения параллельных операций. по определению

:lolpray:

Мне лень что-то лично тебе доказывать и объяснять, ты уже не в первый раз показываешь свою некомпетентность, ну или не понимание того, о чем я говорю. Мб кому-то тут не похуй будет.

 

Синглтред экзекьютор как раз выполняет раннаблы по одному.

 

Мейн тред ничего не ждет, просто нужен порядок возврата колбеков.

 

это же элементарно

 

в псевдо-говнокоде:

 

array = [task1, task2, task3]

futureArray = []

foreach task in array {

    futureArray.push(executor.execute(task))

}

foreach future in futureArray {

    result = future.blockingGetResult

    doShitWithResult(result)

}

 

 

??????


Изменено пользователем Just.Doit

 

очень крутые котейки

RqvSzvr.png


Кому-то пизды дал - нужно сделать скрин обязательно. (с) Solo

Поделиться сообщением


Ссылка на сообщение

 

ебать ты долбоеб конечно, раз считаешь, что коллбеки могут чего-то ждать

 

 

:megapalm: иди нахуй, бтв нихуя не понимаешь, что-то себе вечно додумываешь.

 

 

А что?)

 executorService.submit(() -> {
updateRegions(e.getPlayer(), MovementWay.MOVE, e.getTo(), e);


});

 

А в чем разница между тем что я назвал их тредами а ты тасками?

 

Или ты думаешь если таски 1 и 3 попадут в один тред то их очередность может поменяться?)


towBCf6.pngimage.png.6f88ac9ad688355eb803ba0b32e309ca.pngimage.png.c05354238865437022b3e4a97a835dbd.pngimage.png.0e8329f2b07e208ae8ef4e3f6878d126.png

 

 

 

Поделиться сообщением


Ссылка на сообщение

 

 

ты не можешь никаким образом гарантировать очередность выполнения параллельных операций. по определению

:lolpray:

Мне лень что-то лично тебе доказывать и объяснять, ты уже не в первый раз показываешь свою некомпетентность, ну или не понимание того, о чем я говорю. Мб кому-то тут не похуй будет.

 

Синглтред экзекьютор как раз выполняет раннаблы по одному.

 

Мейн тред ничего не ждет, просто нужен порядок возврата колбеков.

 

это же элементарно

 

в псевдо-говнокоде:

 

array = [task1, task2, task3]

futureArray = []

foreach task in array {

    futureArray.push(executor.execute(task))

}

foreach future in futureArray {

    result = future.blockingGetResult

    doShitWithResult(result)

}

 

 

??????

 

тссс, челик считает, что ждать ничего не надо, оно само


Торжество разума в том, чтобы уживаться с теми, у кого этого разума нет. Вольтер.
Чтобы хорошо высыпаться, нужно спать 8 часов в день. И еще столько же ночью.

Поделиться сообщением


Ссылка на сообщение

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

 

This.

 

Бтв могу дать весь код класса, мне то что.

https://hastebin.com/dacurahera.java

Поделиться сообщением


Ссылка на сообщение

 

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

 

This.

 

Бтв могу дать весь код класса, мне то что.

https://hastebin.com/dacurahera.java

 

 

Окей ЕЩЕ РАЗ БЛЯТЬ

 

Ты послал таски в каком то порядке

 

ТРЕДЫ ВЕРНУЛИ РЕЗАЛТЫ В РАНДОМНОМ ПОРЯДКЕ - ты не можешь это контролировтаь

 

Но ты можешь ждать резальт от таски 1 обрабатывать его потом от таски 2 обратабывать и тд


towBCf6.pngimage.png.6f88ac9ad688355eb803ba0b32e309ca.pngimage.png.c05354238865437022b3e4a97a835dbd.pngimage.png.0e8329f2b07e208ae8ef4e3f6878d126.png

 

 

 

Поделиться сообщением


Ссылка на сообщение

EventHandler'ы обрабатываются в мейн потоке. 

Bukkit.getScheduler().runTask ( выполняет таск опять же обратно в мейн потоке  :blnate:

Поделиться сообщением


Ссылка на сообщение

 

как ты вообще пытаешься уместить в одном предложении слова потоки и очередность?

 tBGrPHL.png

В каком порядке таски ушли в воркер в таком их колбек должен быть обработан в мейне.

 

f[f[f[f[f[[f

 

чобля?


Публикация отключена

Поделиться сообщением


Ссылка на сообщение

 


Ты послал таски в каком то порядке

 

ТРЕДЫ ВЕРНУЛИ РЕЗАЛТЫ В РАНДОМНОМ ПОРЯДКЕ - ты не можешь это контролировтаь

Нет, они работают теперь как я хочу.

Раньше когда я пользовался 

 

new BukkitRunnable() {
@Override
public void run() {
updateRegions(e.getPlayer(), MovementWay.MOVE, e.getTo(), e);
}

}.runTaskAsynchronously(this.plugin);

Таски попадали в пул тредов и выполнялись гонкой. 

Поделиться сообщением


Ссылка на сообщение
(изменено)

 

Ты послал таски в каком то порядке

 

ТРЕДЫ ВЕРНУЛИ РЕЗАЛТЫ В РАНДОМНОМ ПОРЯДКЕ - ты не можешь это контролировтаь

Нет, они работают теперь как я хочу.

Раньше когда я пользовался 

new BukkitRunnable() {
@Override
public void run() {
updateRegions(e.getPlayer(), MovementWay.MOVE, e.getTo(), e);
}

}.runTaskAsynchronously(this.plugin);

Таски попадали в пул тредов и выполнялись гонкой. 

 

если я правильно понял все что ты сюда скинул

тебе нужно вынести из  updateRegions обработку результата наверх

а в нем лишь отдавать в резалте данные


Изменено пользователем Just.Doit

 

очень крутые котейки

RqvSzvr.png


Кому-то пизды дал - нужно сделать скрин обязательно. (с) Solo

Поделиться сообщением


Ссылка на сообщение

И выходили баги типо.

[15:10:58 INFO]: ReloadedACU вышел из региона с инвизом
[15:10:58 INFO]: ReloadedACU вошел в регион с инвизом
[15:10:58 INFO]: ReloadedACU вышел из региона с инвизом
[15:10:58 INFO]: ReloadedACU вошел в регион с инвизом
[15:10:58 INFO]: ReloadedACU вошел в регион с инвизом
[15:10:59 INFO]: ReloadedACU вышел из региона с инвизом
[15:10:59 INFO]: ReloadedACU вошел в регион с инвизом
[15:10:59 INFO]: ReloadedACU вышел из региона с инвизом
[15:10:59 INFO]: ReloadedACU вышел из региона с инвизом
[15:10:59 INFO]: ReloadedACU вошел в регион с инвизом
[15:10:59 INFO]: ReloadedACU вошел в регион с инвизом
[15:10:59 INFO]: ReloadedACU вышел из региона с инвизом

 Хотя вход в регион должен был следовать за выходом из региона, чехардой  :blnate:


Блять я не могу, пиздец рофл. Проблем нет, а срач какой-то идет.  :lolpray:

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации сообщений.

×
×
  • Создать...