TestsTested | ✗ |
LangLanguage | Obj-CObjective C |
License | MIT |
ReleasedLast Release | Dec 2014 |
Maintained by Unclaimed.
⊛ ARPerformanceScout ⊛ is a slim tool for discovering Objective-C performance bottlenecks.
In the source code:
/* Measures the time taken to run a piece of code on the current thread */
ARpS_measure(^{
[self writeSomethingToAFile_blocksTheUI];
});
The resulting log message:
≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌
⊛ ARPerformanceScout ⊛
✔ Measured: 2.512919s
≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌
When in doubt if a method is blocking the UI or not, calling ARpS_blockThread()
makes it obvious very quickly.
/* blocks the current thread for 3 seconds */
ARpS_blockThread(3);
When two pieces of code from very different parts of the app need to be timed, ARpS_startTimer()
and ARpS_stopTimerAndLog()
can help.
Calling the two functions:
/* FirstSourceFile.m */
- (void)firstDummyMethod {
...
ARpS_startTimer();
}
/* SecondSourceFile.m */
- (void)secondDummyMethod {
...
ARpS_stopTimerAndLog();
}
Results in a log:
≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌
⊛ ARPerformanceScout ⊛
✔ Timed: 15.291372s
≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌≌
Claudiu-Vlad Ursache
Artsy
ARPerformanceScout is available under the MIT license. See the LICENSE file for more info.