On July 13, 2010, Thomas Fjellstrom wrote: > To explain, the data engine will do a DNS lookup, arp lookup, and a shell > out to ping (that runs for about 5 seconds per host), when an update is > requested. The data engine can not wait for them to finish, otherwise it'd > block for possibly (if DNS is having issues) tens of seconds at a time, per > host. > > So what should I do here?
if a timeout is requested, but no data can be filled immediately, then once setData is called on the source, at that point the visualization should be notified. in your case, it sounds like there are multiple setData calls, however. so the first one probably triggers an update, and the subsequent ones (e.g. the ping) waits for the next timeout. one way around that is to not use the setData API in DataEngine, but to instead create subclasses of DataContainer for each sourc. when all the data is retreived, then the DataContainer can call checkForUpdate(). that should work better for your use case. > > > 2. DataEngine::setPollingInterval seems to poll only once. > > > > yes, that's an engine-wide polling interval. > > I mean once period. I expected it to actually setup a regular poll, not a > one shot timer. that was a bug; i've just fixed it. it now does set up a regular poll as it is supposed to :) -- Aaron J. Seigo humru othro a kohnu se GPG Fingerprint: 8B8B 2209 0C6F 7C47 B1EA EE75 D6B7 2EB1 A7F1 DB43 KDE core developer sponsored by Qt Development Frameworks
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel