标签: tasklet

SoftIRQ和Tasklet之间的区别

在研究Linux中断处理时,我发现Tasklets和SoftIRQ是执行"下半部分"(较低优先级工作)的两种不同方法.我理解这一点(非常真实的需要).

不同的是,SoftIRQ是重要的,而Tasklet则不是.同样的SoftIRQ可以在不同的CPU上运行,而Tasklets不是这种情况.

虽然我从表面上理解这一点,但我无法理解这两个特征的要求.在什么情况下我们可以使用这些设施?如何识别我现在应该使用Tasklets和SoftIRQs.

另外,Tasklets是在SoftIRQ上制作的?在我用LKML阅读的一本书中,有关删除Tasklets的争论.我完全搞砸了为什么要引入这样的功能?一些短视(没有冒犯意味着)?

任何关于此的指示都会有所帮助.

linux-kernel interrupt-handling softirq tasklet

21
推荐指数
2
解决办法
3万
查看次数

如何理解appengine ndb.tasklet?

来自文档:

NDB tasklet是一段可能与其他代码并发运行的代码.如果你编写一个tasklet,你的应用程序可以像使用异步NDB函数一样使用它:它调用tasklet,它返回一个Future; 之后,调用Future的get_result()方法获取结果.

文档中的解释和示例对我来说真的很神奇.我可以使用它,但很难理解它.

例如:

  1. 我可以在函数中放入任何类型的代码并将其装饰为ndb.tasklet吗?然后将其用作异步功能.或者它必须是appengine RPC?
  2. 这种装饰还能在我的电脑上运行吗?
  3. 它与pypy的tasklet相同

python google-app-engine tasklet

7
推荐指数
1
解决办法
2480
查看次数

如何以编程方式为spring tasklet(不是块)配置容错

以编程方式配置块的容错工作类型如下:

stepBuilders.get("step")
  .<Partner,Partner>chunk(1)
  .reader(reader())
  .processor(processor())
  .writer(writer())
  .listener(logProcessListener())
  .faultTolerant()
  .skipLimit(10)
  .skip(UnknownGenderException.class)
  .listener(logSkipListener())
  .build();
Run Code Online (Sandbox Code Playgroud)

诀窍是,通过添加"chunk",链转换为SimpleStepBuilder,它提供"faultTolerant"方法.

我的问题是如果你只有一个tasklet(没有读者,处理器,编写器)怎么做?

定义tasklet的工作方式如下:

stepBuilders.get("step")
  .tasklet(tasklet())
  .build();
Run Code Online (Sandbox Code Playgroud)

"tasklet"的使用切换到不提供"faultTolerant"方法的TaskletStepBuilder.因此,我认为没有办法如何定义像skipLimit这样的属性.

有任何想法吗?

spring fault-tolerance batch-processing tasklet

5
推荐指数
1
解决办法
4961
查看次数

一个步骤中不止一个 tasklet?

我有一个 tasklet 将一些信息设置到我的 JobContext 中,另一个 tasklet 检查一些东西以了解我是否可以执行批处理中的后续步骤。如果我在我的工作流程中使用两个不同的步骤,这两个小任务都可以很好地工作,但我想在同一步骤中使用这两个小任务。

我尝试在批处理配置中添加两次“.tasklet(taskletName)”,如下所示:

return stepBuilderFactory.get("stepSettings").tasklet(taskletSettings).tasklet(taskletChecking).listener(executionContextListener).listener(stepExecutionListener).build();
Run Code Online (Sandbox Code Playgroud)

它不起作用:只执行了一个 tasklet(它似乎是第二个)。我在 spring 文档中什么也没看到;有没有办法做到这一点 ?或者 Spring 不允许在同一步骤中有多个 tasklet 吗?

spring spring-batch tasklet

4
推荐指数
1
解决办法
4319
查看次数