我是java新手我正在搜索后台线程在java 中,即使在 java桌面应用程序关闭之后也会定期运行。 我需要与 Android 中的服务类似的内容。 我搜索了它,但我发现只是线程没有服务。 我必须通过后台主题或服务将数据发送到服务器,该服务器将存储在 config.propertise 文件中。 在此先感谢
答案 0 :(得分:5)
一个线程包含在一个进程中,因此讨论应用程序关闭后运行的线程是没有意义的。
你要么:
答案 1 :(得分:1)
您可以通过使用计时器类来实现相同的功能。 O.w后台服务在这里 How to create a windows service from java app
答案 2 :(得分:0)
我有一种不寻常的方式来做到这一点。它总是对我有用。 用户关闭应用程序后,您必须执行某项任务,对吗??? 。 只需覆盖关闭按钮功能,并在关闭操作时隐藏窗口。 继续你的工作线程。 完成工作后,请使用
关闭您的应用 System.exit
用户永远不会知道应用程序是在后台运行。
答案 3 :(得分:0)
基础this,创建一个Java程序,该程序将用作Linux crontab或Windows调度程序的服务。
public class SomeService
{
// Your task will repeat itself periodically (here every minute), until it is stopped
private static final int SLEEP_TIME = 60000;
private static boolean stop = false;
public static void start(String[] args)
{
System.out.println("start");
while (!stop)
{
sendDataToServer();
try
{
Thread.sleep(SLEEP_TIME);
}
catch (InterruptedException e) {}
}
}
private void sendDataToServer()
{
// TODO your job here
}
public static void stop(String[] args)
{
System.out.println("stop");
stop = true;
}
public static void main(String[] args)
{
if ("start".equals(args[0]))
{
start(args);
}
else if ("stop".equals(args[0]))
{
stop(args);
}
}
}