CPS style

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

и 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?

вот и мне не хочется. хочется акторы, и акторы с тредами, а не с короткими обработчиками событий. они, кхм, гораздо больше подходят для выражения воркфловов, как только в воркфловах появляются циклы, и не требуют всего этого мозговыворачивания для форварда локальных переменных, как минимум.
(will be screened)
(will be screened if not validated)
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

If you are unable to use this captcha for any reason, please contact us by email at support@dreamwidth.org

Profile

wizzard: (Default)
wizzard

January 2019

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

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 5th, 2025 08:56 am
Powered by Dreamwidth Studios