本文整理汇总了Java中net.javacrumbs.shedlock.core.LockProvider类的典型用法代码示例。如果您正苦于以下问题:Java LockProvider类的具体用法?Java LockProvider怎么用?Java LockProvider使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
LockProvider类属于net.javacrumbs.shedlock.core包,在下文中一共展示了LockProvider类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: taskScheduler
import net.javacrumbs.shedlock.core.LockProvider; //导入依赖的package包/类
/**
* 计划任务分布式锁配置,保证在多个实例下,任务只在一台机器上运行.
*
* @param lockProvider
* @return
*/
@Bean
public ScheduledLockConfiguration taskScheduler ( LockProvider lockProvider ) {
return ScheduledLockConfigurationBuilder
.withLockProvider( lockProvider )
.withPoolSize( 30 )
.withDefaultLockAtMostFor( Duration.ofHours( 24 ) )
.build();
}
示例2: fuzzTestShouldWorkWithTransaction
import net.javacrumbs.shedlock.core.LockProvider; //导入依赖的package包/类
public static void fuzzTestShouldWorkWithTransaction(LockProvider lockProvider, DataSource dataSource) throws ExecutionException, InterruptedException {
new FuzzTester(lockProvider) {
@Override
protected Void task(int iterations) {
TransactionTemplate transactionTemplate = new TransactionTemplate(new DataSourceTransactionManager(dataSource));
return transactionTemplate.execute(status -> super.task(iterations));
}
@Override
protected boolean shouldLog() {
return true;
}
}.doFuzzTest();
}
示例3: taskScheduler
import net.javacrumbs.shedlock.core.LockProvider; //导入依赖的package包/类
@Bean
public ScheduledLockConfiguration taskScheduler(LockProvider lockProvider) {
return ScheduledLockConfigurationBuilder
.withLockProvider(lockProvider)
.withPoolSize(10)
.withDefaultLockAtMostFor(Duration.ofMinutes(10))
.build();
}
示例4: shouldBeAbleToLockRightAfterUnlock
import net.javacrumbs.shedlock.core.LockProvider; //导入依赖的package包/类
@Test
public void shouldBeAbleToLockRightAfterUnlock() {
LockConfiguration lockConfiguration = lockConfig(LOCK_NAME1);
LockProvider lockProvider = getLockProvider();
for (int i = 0; i < 100; i++) {
Optional<SimpleLock> lock = lockProvider.lock(lockConfiguration);
assertThat(lockProvider.lock(lockConfiguration)).isEmpty();
assertThat(lock).isNotEmpty();
lock.get().unlock();
}
}
示例5: getLockProvider
import net.javacrumbs.shedlock.core.LockProvider; //导入依赖的package包/类
@Override
protected LockProvider getLockProvider() {
return new JdbcTemplateLockProvider(getDatasource());
}
示例6: lockProvider
import net.javacrumbs.shedlock.core.LockProvider; //导入依赖的package包/类
@Bean
public LockProvider lockProvider(DataSource dataSource) {
return new JdbcTemplateLockProvider(dataSource, "shedlock");
}
示例7: lockProvider
import net.javacrumbs.shedlock.core.LockProvider; //导入依赖的package包/类
@Bean
public LockProvider lockProvider() {
LockProvider mock = mock(LockProvider.class);
when(mock.lock(any())).thenReturn(Optional.empty());
return mock;
}
示例8: getLockProvider
import net.javacrumbs.shedlock.core.LockProvider; //导入依赖的package包/类
@Override
protected LockProvider getLockProvider() {
return lockProvider;
}
示例9: getLockProvider
import net.javacrumbs.shedlock.core.LockProvider; //导入依赖的package包/类
@Override
protected LockProvider getLockProvider() {
return zookeeperCuratorLockProvider;
}
示例10: getLockProvider
import net.javacrumbs.shedlock.core.LockProvider; //导入依赖的package包/类
@Override
protected LockProvider getLockProvider() {
return new JdbcLockProvider(testUtils.getDatasource());
}
示例11: withLockProvider
import net.javacrumbs.shedlock.core.LockProvider; //导入依赖的package包/类
/**
* Configures required lockProvider
*/
static ScheduledLockConfigurationBuilderWithoutTaskScheduler withLockProvider(LockProvider lockProvider) {
return new DefaultScheduledLockConfigurationBuilder(lockProvider);
}
示例12: DefaultScheduledLockConfigurationBuilder
import net.javacrumbs.shedlock.core.LockProvider; //导入依赖的package包/类
public DefaultScheduledLockConfigurationBuilder(LockProvider lockProvider) {
this.lockProvider = lockProvider;
}
示例13: SpringLockableTaskSchedulerFactoryBean
import net.javacrumbs.shedlock.core.LockProvider; //导入依赖的package包/类
public SpringLockableTaskSchedulerFactoryBean(TaskScheduler taskScheduler, LockProvider lockProvider, TemporalAmount defaultLockAtMostFor) {
this(taskScheduler, lockProvider, defaultLockAtMostFor, Duration.ZERO);
}
示例14: FuzzTester
import net.javacrumbs.shedlock.core.LockProvider; //导入依赖的package包/类
public FuzzTester(LockProvider lockProvider) {
this.lockProvider = lockProvider;
}
示例15: newLockableTaskScheduler
import net.javacrumbs.shedlock.core.LockProvider; //导入依赖的package包/类
/**
* Creates {@link ThreadPoolTaskScheduler} and ensures that {@link net.javacrumbs.shedlock.core.SchedulerLock} annotated methods
* are locked using the lockProvider
*
* @param poolSize size of the thread pool
* @param lockProvider lock provider to be used
*/
public static LockableTaskScheduler newLockableTaskScheduler(int poolSize, LockProvider lockProvider) {
ThreadPoolTaskScheduler taskScheduler = new ThreadPoolTaskScheduler();
taskScheduler.setPoolSize(poolSize);
taskScheduler.initialize();
return newLockableTaskScheduler(taskScheduler, lockProvider);
}