[Review: Mike] peek() is not const because it must take/release a lock

Mike,

Please can you review this fix.  `peek()` can't be const because it now takes/releases a lock.  I'm going to merge this anyway to fix the chronos build but please let me know if you have any questions/comments.

Thanks,

Matt