create method :
public void setAlarm(Context context, int interva) {
    alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
    Intent i = new Intent(context, NotificationAlarm.class);
    PendingIntent pi = PendingIntent.getBroadcast(context, 0, i, 0);
    alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(), interva, pi); 
}
then create class NotificationAlarm
public class NotificationAlarm extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        loop();
    }
    private void loop() {
    //work
    }
}
add the class in AndroidManifest
<receiver android:name=".NotificationAlarm" />
call the method in activity or service
setAlarm(this,5000);
for cancelAlarm try this:
public void cancelAlarm(Context context) {
    Intent intent = new Intent(context, NotificationAlarm.class);
    PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, intent, 0);
    alarmManager = (AlarmManager) G.context.getSystemService(G.context.ALARM_SERVICE);
    alarmManager.cancel(pendingIntent);
}