
登録よう 登録よう54843
1 discussion post
I purchased this software.
It's a very good software, and I'm grateful for it.
However, the same image is selected many times as the random wallpaper.
I've divided my desktop into 20 sections.
I have 50,000 target images.
Even with this, the probability of the same image being selected is high.
After about a week, the image set seems to change, but even during that week, the same image is frequently selected.
I would like the random selection to be truly random.

sandmann
66 discussion posts
While Owen is technically correct, as a practical matter this option is useless if you have more than a couple dozen image files.
This is a design problem with DF I have mentioned multiple times. In short, DF does a complete directory enumeration every single time a wallpaper image changes. That means enumerating 50,000 directory files in your case, creating a hash table for each entry, and building a database with those 50,000 files. But it doesn't do this once, it does it 20 times, once for each display split, every single time the wallpaper image changes. Then the 7-day history lookup adds even more compute demand.
This entails a huge overhead and DF simply can't keep up so wherever the pointer was last time is where it starts from again, and if there are not enough CPU cycles available, it just picks the current entry, or maybe the next entry in the database.
I've been over this with Keith, and he insists that enumerating directories is fast and doesn't take up much time. My experience tells me otherwise.
I made a request several years ago to change this so that DF builds a list of files once, from 1 to N, then randomly selects a file until the list is empty. Then makes a new list.
Conceptually this is simpler, with much much less demand on the CPU and OS and disk drives. And the code to implement this is much less convoluted than the current scheme.
So the request is there, but unless zillions of DF users request it, nothing will happen.
BTW, there is other software that works the way I describe, but I haven't found one that also supports display splitting.