6/27/2023 0 Comments Telecharger kiwix![]() But it does seem difficult to maintain the constraint that aria must respond to every rpc request quickly enough to keep the kiwix-desktop UI responsive. Its good to have the actual download and disk operations happening in another thread (or in this case, another process). In some cases there won't be a perceivable delay, but its still happening. The UI thread can be called upon many times per second and even a 1ms HTTP request to the aria rpc endpoint will technically block UI updates. ![]() I think the challenge with the current approach is that any IO or blocking (even CPU intensive tasks) can cause unresponsiveness in the UI. What you suggest would indeed fix the issue but I think it would be better to know why RPC is hanging and fix that. The rpc call is local only the latency should not be a issue here. We have already move all the downloading process (aria) in another process. "Download is not available" when on click on the download button. I have also succeed to break the download system once or twice by quickly launch/start/pause/cancel downloads: ![]() The only point I see where it could blocks is indeed on the aria rpc call. But we may have miss something on Windows. We already pass a option to not preallocate files ( ) so it should not be the issue. I haven't face hangs at end of download for "small" zim files (few GB) but 78GB download is still running. I've faced very few small hangs on linux too at start of downloading. Or, run the downloader in its own thread in kiwix-desktop. I think the ultimate fix for something like this is to make the aria rpc endpoint requests fully async so there is no chance they will become blocking. I expect that users with fat32 filesystems on removable HDDs would have an even worse hang since they'd have to wait the full duration of the preallocation process. Maybe aria takes a lock out when performing preallocation and the rpc endpoints wait for the lock to return? The hang seemed coincide with the file preallocation. I could see the preallocation in action where we have only downloaded ~400MB but the file is ~11GB: My Windows VM should be running NTFS, but it still took a long time for me. There are some warnings about how this process works quickly with modern filesystems but can take a long time on ext3/fat32. The other thing I noticed is aria does preallocation of files at the beginning of the download. So the aria rpc may be hanging at some point during the download setup or status check and due to the blocking libcurl request in libkiwix that ultimately leads to hanging the UI thread. At first I thought the problem was with the startDownload function, but the screenshot clearly shows 800KB has downloaded already. Although this makes a request to the aria rpc endpoint, my hypothesis is that aria doesn't reply immediately to some requests. I believe the problem lies in the libkiwix downloader. The scrolling and interface remain somewhat responsive even with a lot of concurrent downloads (5-10).īut Windows very clearly hangs after pressing Download on a large zim. Testing on linux, I didn't see an issue with hangs. You can then transfer the ZIM file to your iOS device using iTunes File Sharing.Thanks, I didn't realize they were different codebases. You can download these files directly using the Kiwix App on your iPhone, iPad, or iPod Touch - but this might take a long time, may incur expensive charges for the download, and is liable to errors because some files are rather large.Ī faster and more reliable method is to use a computer to download the small torrent file for the large non-indexed ZIM file you want (not the pre-indexed package for Windows) from, then use a bit-torrent client (such a qTorrent) to download the actual ZIM data file to your computer. You don't need Internet, everything is stored on your mobile device!ĭownload the Kiwix program from the iTunes App Store then download the ZIM data files which contain the content. ¿Qué hace Kiwix Desktop De? Kiwix enables you to have the whole of Wikipedia (and many other web sites) available wherever you go! On a boat, in the middle of nowhere, or when data charges are too high, Kiwix gives you access to the whole human knowledge for free.
0 Comments
Leave a Reply. |