1. A system, comprising: one or more dynamic monitors respectively configured to detect program errors of an application during runtime; and a concurrency fuzzing module configured to selectively randomize a thread schedule associated with the application, wherein the one or more dynamic monitors to check the application in a variety of concurrency scenarios due to the randomized thread schedule and the concurrency fuzzing module randomizes the thread schedule to increase a likelihood of the one or more dynamic monitors detecting program errors.