Running compute-intensive or blocking I/O operations in the UI event thread of smartphone apps can severely degrade responsiveness. Despite the fact that Android supports writing concurrent code via AsyncTask, we know little about how developers use AsyncTask to improve responsiveness. To understand how AsyncTask is used/underused/misused in practice, we first conduct a formative study using a corpus of 104 open-source Android apps comprising 1.34M SLOC. Our study shows that even though half of the apps use AsyncTask, there are hundreds of places where they missed opportunities to encapsulate long-running operations in AsyncTask. Second, 46% of the usages are manually refactored. However,the refactored code contains concurrency bugs (such...
Programming environments for smartphones expose a concurrency model that combines multi-threading an...
Software applications developed for the Android platform are very popular. Due to this, static analy...
Concurrency is becoming the norm in modern software because multicores are now everywhere. Developer...
Running compute-intensive or blocking I/O operations in the UI event thread of smartphone apps can s...
Running compute-intensive or blocking I/O operations in the UI event thread of smartphone apps can s...
To avoid unresponsiveness, a core part of mobile development is asynchronous programming. Android pr...
To avoid unresponsiveness, a core part of mobile development is asynchronous programming. Android pr...
To avoid unresponsiveness, a core part of mobile development is asynchronous programming. Android pr...
In multicore era, programmers exploit concurrent programming to gain performance and responsiveness ...
In multicore era, programmers exploit concurrent programming to gain performance and responsiveness ...
Asynchronous programming is in demand today, because re-sponsiveness is increasingly important on al...
Asynchronous programming is in demand today, because responsiveness is increasingly important on all...
Asynchronous programming is in demand today, because responsiveness is increasingly important on all...
Software applications developed for the Android platform are very popular. Due to this, static analy...
Programming environments for smartphones expose a concurrency model that combines multi-threading an...
Programming environments for smartphones expose a concurrency model that combines multi-threading an...
Software applications developed for the Android platform are very popular. Due to this, static analy...
Concurrency is becoming the norm in modern software because multicores are now everywhere. Developer...
Running compute-intensive or blocking I/O operations in the UI event thread of smartphone apps can s...
Running compute-intensive or blocking I/O operations in the UI event thread of smartphone apps can s...
To avoid unresponsiveness, a core part of mobile development is asynchronous programming. Android pr...
To avoid unresponsiveness, a core part of mobile development is asynchronous programming. Android pr...
To avoid unresponsiveness, a core part of mobile development is asynchronous programming. Android pr...
In multicore era, programmers exploit concurrent programming to gain performance and responsiveness ...
In multicore era, programmers exploit concurrent programming to gain performance and responsiveness ...
Asynchronous programming is in demand today, because re-sponsiveness is increasingly important on al...
Asynchronous programming is in demand today, because responsiveness is increasingly important on all...
Asynchronous programming is in demand today, because responsiveness is increasingly important on all...
Software applications developed for the Android platform are very popular. Due to this, static analy...
Programming environments for smartphones expose a concurrency model that combines multi-threading an...
Programming environments for smartphones expose a concurrency model that combines multi-threading an...
Software applications developed for the Android platform are very popular. Due to this, static analy...
Concurrency is becoming the norm in modern software because multicores are now everywhere. Developer...