package com.ningdatech.carapi.open.aop;

import java.lang.annotation.*;

/**
 * @Classname TackLock
 * @Description
 * @Date 2022/10/31 15:34
 * @Created by PoffyZhang
 */

@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface TaskLock {

    /**
     * 定时任务名称
     *
     * @return
     */
    String name() default "";

    /**
     * redis缓存key值
     *
     * @return
     */
    String key();

    /**
     * 过期时间单位s （自动解锁时间，防止死锁）
     *
     * @return
     */
    int expired();

    /**
     * 执行完毕是否解锁
     *
     * @return
     */
    boolean unLock() default true;
}
