Fix profile saver initial wait

Was using TimedWait for the initial wait, but this can return
early if the process receives any interrupt (due to futex). The
solution is to use a wait loop. If the wait returned early, not
enough classes were including in the profile. This negatively
affected application launch times in some scenarios.

Sample wait times before the change:
Waited 2.002s
Waited 97.808ms
Waited 182.676ms
Waited 2.000s
Waited 1.678s

Bug: 27688727

(cherry picked from commit 0ec065d55ccc4eb0956b0a2231bcc8c1a6d1d273)

Change-Id: I7cfdda9dcff942c7618d6022a0c31f872fb76fcf
1 file changed