Still working on #swad, and currently very busy with improving quality, most of the actual work done inside my #poser library.
After finally supporting #kqueue and #epoll, I now integrated #xxhash to completely replace my previous stupid and naive hashing. I also added a more involved #dictionary class as an alternative to the already existing #hashtable. While the hashtable's size must be pre-configured and collissions are only ever resolved by storing linked lists, the new dictionary dynamically nests multiple hashtables (using different bits of a single hash value). I hope to achieve acceptable scaling while maintaining also acceptable memory overhead that way ...
#swad already uses both container classes as appropriate.
Next I'll probably revisit poser's #threadpool. I think I could replace #pthread condition variables by "simple" #semaphores, which should also reduce overhead ...
Nice read! @mamantoha published a short and nice ✍️ blog post about 🚥 #semaphores in @CrystalLanguage at @thepracticaldev:
https://dev.to/mamantoha/semaphores-in-crystal-5eha
#CrystalLang #CrystalLanguage #concurrency #waitgroup #mutex #parallel #paralellism #concurrency #programming #crystal
[#GLAM] Mise en ligne sur #Commons d'une sélection de 134 plans, dessins et photographies de #phares et #sémaphores 💡🌊 des #Archivesnationales (#JEP2024 consacrées au #patrimoinemaritime)
(to be continued... quand la suite du corpus sera restaurée et numérisée)
Images sur #Commons https://commons.wikimedia.org/wiki/Category:Media_contributed_by_the_Archives_Nationales_(France)/20
#Cartographie : https://wikimap.toolforge.org/?cat=Media%20contributed%20by%20the%20Archives%20Nationales%20(France)/20 (#wikimap)
#archives #patrimoine #GLAMarchives #lighthouse #Méditerrannée #Atlantique #phare #sémaphore
It's weird, but I had NO IDEA on #macOS you could nest both dispatch_async AND pass #semaphores through to be used to ensure things happened one-at-a-time when you dispatched the async. #Xcode
I know it's weird, but I had like 4 things to do to each video file (ffmpeg, atomicparsley, archive original, & move new file in place onto a #synology )
I saw no other way to get output from an NSTask except doing a dispatch_async for #ffmpeg and #atomicparsley
Handy! 🏆
@siracusa @jamesthomson