The Grace version
Thanks to @isaced now it's possible to set a grace period.
Grace period is the time (in seconds) that the invoked method may be run without showing the HUD. If the task finishes before the grace time runs out, the HUD will not be shown at all. This may be used to prevent HUD display for very short tasks. Defaults to 0 (no grace time). like MBProgressHUD.
PKHUD.sharedHUD.graceTime = 0.5
HUD.show(.progress)
... // Your task code