问题标签 [tasklet]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
9760 浏览

java - Spring Batch:如何创建复合项目编写器?

Spring BatchSpring Boot应用程序中使用。Spring Boot 版本1.3.5.RELEASE是.

我正在尝试使用CompositeItemWriter,以便首先由 WriterOne 压缩/压缩项目列表,然后将其传递给 WriterTwo,然后将它们写入数据库。

这是我的作家1:

这是我的作家2:

这是我正在尝试初始化任务步骤并为其提供 CompositeItemWriter 而不是 ItemWriter。

然后代码给出编译时错误:

0 投票
1 回答
1140 浏览

java - 为什么 tasklet 的 execute() 方法从未被调用

我需要在 Spring Batch 上编写简单的应用程序。我有配置+工作+步骤结构。在里面我使用tasklet。问题是:tasklet 的 execute() 方法从未被调用过。该程序运行作业-> 步骤-> 创建小任务,仅此而已。A 发现了很多示例,我用于编写代码,但我无法理解,我做错了什么。

我的代码:

小任务代码:

还有主要课程:

请说出什么是错的,以及我应该如何解决它。

0 投票
1 回答
137 浏览

java - 无需声明额外的 TaskScheduler

我发现不需要声明一个额外的 TaskScheduler,我可以有这样的任务:

但是你能帮我解释一下吗,为什么不需要像下面这样?

0 投票
2 回答
84 浏览

linux-kernel - 在处理小任务时保存状态?

我正在阅读 Linux 内核开发并在 tasklets 章节(https://doc.lagout.org/operating%20system%20/linux/Linux%20Kernel%20Development%2C%203rd%20Edition.pdf page143)中感到困惑。在 tasklet_schedule 函数中,中断状态被保存,而在 taslet_action 中则没有。作者解释说,上下文没有保存在 taslet_action 中,因为该函数知道始终启用中断。我不明白这组中断如何影响保存上下文?谢谢!

0 投票
1 回答
171 浏览

multithreading - Spring批处理并行处理根据step1结果创建步骤

我正在尝试使用 Spring Boot 和 Spring Batch 实现并行处理。此批处理将从 UI 触发,并带有一些必需的参数

我需要根据请求参数创建步骤,我尝试如下,

其余控制器看起来,

和批处理配置:

masterFlow 将作业参数读入其变量中,readFile() 给出列表(基于此,必须创建步骤),为此需要 jobParameters。

问题是:

在启动我的应用程序本身时, readFile() 正在执行。但是我需要在作业通过 RestController 触发时执行它,因为它具有所需的参数。

如何在启动应用程序时停止此执行?

0 投票
1 回答
529 浏览

spring - Spring Batch:这是一个小任务还是块?

我有点困惑!

Spring Batch 提供了两种不同的方式来实现作业:使用小任务和块。

所以,当我有这个时:

这是一种什么样的实现?小任务?块?

0 投票
0 回答
120 浏览

linux-kernel - 从 tasklet 使用 i2c-device 操作

我为 i2c rtc 芯片编写了一个驱动程序用于学习目的。驱动程序可以从 rtc 芯片检测 GPIO 引脚上的中断。我想将一个小任务安排到中断上下文中,并稍后在小任务中做一些有用的工作。

GPIO irq 处理程序:

小任务函数:

进入tasklet函数我想和i2c-chip做一些通信,因为我需要清除芯片的中断标志。

当我尝试使用 i2c 时,我的内核失败了。我从非进程上下文中了解i2c 层。I2C 功能太慢了,这就是为什么我想在下半部分做慢工作。但我不能在下半部分使用 i2c。为什么?

检测到中断后,如何将一些标志重置到芯片中?

UPD 1:内核失败后显示堆栈跟踪

0 投票
1 回答
182 浏览

spring-batch - 使用 Tasklet 方法时 FlatFileItemWriter 不生成文件

我使用方法编写了以下代码tasklet来生成包含数据的文件。

上面的代码编译并运行没有错误,但它没有在磁盘上生成任何文件。

我尝试调试以检查是否在缓冲区上创建了 fileName 和 etc 值以写入磁盘,并且除了生成数据并将数据写入文件之外,一切都按预期工作。

如果我使用基于块的方法编写代码,它工作正常。

如果我做错了什么,请告诉我。我在这里先向您的帮助表示感谢。

编辑:添加建议的更改后,文件正在磁盘上创建,但文件丢失了我使用 setHeaderCallback() 设置的标题

0 投票
1 回答
449 浏览

java - 使用选择查询从数据库中读取的批处理 Tasklet

如何创建一个 tasklet 类以从 DB 进行自定义选择查询并将数据传递给下一个 tasklet?我必须使用tasklet(没有 jdbcReader 或任何阅读器)

代码示例:

无法理解 select 的结果在哪里以及如何将其传递给下一个 tasklet 进行处理?

0 投票
0 回答
178 浏览

linux-kernel - 线程中断处理程序和tasklet有什么区别?

我在https://lwn.net/Articles/302043/上发现了一个有趣的话题,线程中断处理程序。这不是一个全新的想法,它旨在取代 tasklet。但是当我研究它的功能时,我发现线程中断处理程序和tasklet没有区别。两者都在hard irq中推迟工作并尽快完成与硬件相关的问题,并推迟耗时的部分。谁能告诉我一些关于它的信息?