Jun. 13th, 2012

CPS style

Jun. 13th, 2012 02:35 am
wizzard: (Default)
вот те товарищи, которые так расписывали преимущества колбек-соплей перед многопоточностью, пускай попробуют написать хотя бы один алгоритм, где есть два вложенных цикла.

и waitAll, да.

(псевдокод)
queue=[];
foreach_parallel(file in files){
detectChunkBoundaries();
foreach(chunk in file){
queue.add(AES_encrypt(chunk), SHA(encrypted), file.name);
}
}
chunkers.waitAll();
queue.unique();
encrypters.waitAll();
foreach(var q in queue){
q.upload()
}
uploaders.waitAll();
chunk2 = buildChunkList();
chunk2.upload();
alert(done)


ну вот хоть такое, например ;)
да, detectBoundaries и SHA256 надо делать в вебворкерах, или хотя бы бить их на куски таймаутами, а то браузер скажет "страница повисла", и юзер обидится.

ну как, все еще хочется делать CPS?

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

Profile

wizzard: (Default)
wizzard

January 2019

S M T W T F S
  12 345
6789101112
1314 1516171819
202122 23242526
2728293031  

Most Popular Tags

Page Summary

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 21st, 2025 06:33 pm
Powered by Dreamwidth Studios