

Every Adobe AIR app running on Windows appears to use Adobe AIR.dll and WINMM.dll. At least the several I’ve installed on my PC do. I am trying to find out the exact reason behind their existence though I confess having little knowledge of OS internals.
WINMM.dll runs as a separate thread with a start address like “WINMM.dll!timeGet System Time”. The DLL is an internal Windows module for the Windows Multimedia API containing low-level audio and joystick functions, and the timeGetSystemTime is a function in it that retrieves the system time – the time elapsed since Windows was started – in milliseconds.
My observation is that this particular thread has a context switch delta of around 250 per second. Nearly every 4 milliseconds, this thread is running to, what?, retrieve the system time in milliseconds? Why would it do that?
Adobe AIR.dll has another sad story. At any given point, there appear to be at least two threads (perhaps even identical ones) starting at this DLL. In addition, there is another thread starting at something like <Adobe AIR App.exe> which always has the Adobe AIR.dll in its stack.
This latter thread again has a very high context switch delta of more than 600 per second. What is this doing?
Both these observations are not particular to one AIR app, and apply even when the apps are expected to be absolutely idle. Such high rates of context switches are obviously considered bad, probably even unnecessary, and their RCA may not be too difficult. Before I add this as another of my charges against Adobe AIR apps, I would like to get a greater understanding.
If you would like to make a comment, please fill out the form below.
Do you mean WINMM.dll instead of WIMM.dll? Thanks, Kevin
Sravan,
Thank you for the post! I wanted to follow-up with you on a few key points.
1. We’re actively investigating the thread issues you cited. Thank you for reporting. If you ever want to get a hold of our team directly to report an issue, please contact us via our wish form http://www.adobe.com/go/wish/
2. We continue to investigate memory issues. Our next major version of AIR will include improvements to memory.
3. In general, AIR files tend to consist of files that are already compressed like (.swf, .jpg, .mp3, etc.). As such, you are not likely to see an .air file compress down much further.
Your feedback is greatly appreciated. As a team, we’re dedicated to working with the development community to address issues like the ones you mentioned.
Thank you!
Rob Christensen
Adobe AIR Team
Thanks for pointing out the typo, Kevin. I meant WINMM.dll, yes.
Thank you for the follow-up, Rob. I very much appreciate it. I seem to have trouble filing issues officially, even at work! But I’ll try to voice my concerns out aloud, at the cost of sounding utterly foolish and clueless sometimes. Looking forward for greater things from the AIR team.