Funny, using Winapi.MMSystem.timeBeginPeriod(1) the TWAIN scanning speed doubled! (scanner = fi-5650C, with feeder)
Funny, using Winapi.MMSystem.timeBeginPeriod(1) the TWAIN scanning speed doubled! (scanner = fi-5650C, with feeder)
Without it, it pauses randomly between pages, probably it uses sleep(1) internally for waiting for next data block? And sleep(1) takes 15ms normally, but with timeBeginPeriod it becomes really 1ms :)
http://msdn.microsoft.com/en-us/library/windows/desktop/dd757624%28v=vs.85%29.aspx
http://msdn.microsoft.com/en-us/library/windows/desktop/dd757624%28v=vs.85%29.aspx
Without it, it pauses randomly between pages, probably it uses sleep(1) internally for waiting for next data block? And sleep(1) takes 15ms normally, but with timeBeginPeriod it becomes really 1ms :)
http://msdn.microsoft.com/en-us/library/windows/desktop/dd757624%28v=vs.85%29.aspx
http://msdn.microsoft.com/en-us/library/windows/desktop/dd757624%28v=vs.85%29.aspx
On the other hand, this will drain the battery faster (if that matters), Google Chrome ran afoul of that little gotcha some time ago
ReplyDeletehttps://code.google.com/p/chromium/issues/detail?id=153139
And for the gory details
https://software.intel.com/en-us/articles/cpu-power-utilization-on-intel-architectures/
Eric Grange Thanks for the info, I knew there were some issues so we only set this timeinterval when they are scanning, but actually it is bad twain driver programming :)
ReplyDelete