简体   繁体   English

Google App Engine创建后台线程异常

[英]Google App Engine creating background thread exception

I'm trying to run a long-running process in Google App Engine using Java. 我正在尝试使用Java在Google App Engine中运行长时间运行的过程。 (basically i need something like a daemon thread? or just something runs indefinitely and doesn't block UI but can still communicate with other threads) (基本上,我需要类似守护线程的东西?还是只是无限期地运行,并且不会阻塞UI,但仍然可以与其他线程通信)

so i tried: 所以我尝试了:

@SuppressWarnings("serial")
public class TestingAServlet extends HttpServlet {

    public void doGet(final HttpServletRequest req, final HttpServletResponse resp) throws IOException {
        resp.setContentType("text/plain");
        new Thread(new Runnable() {
            @Override
            public void run() {
                try {
                    resp.getWriter().println("hi, from background thread");
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }).start();

        System.out.println("done");
    }
}

but i get an exception: 但我有一个例外:

java.security.AccessControlException: access denied ("java.lang.RuntimePermission" "modifyThreadGroup") java.security.AccessControlException:访问被拒绝(“ java.lang.RuntimePermission”“ modifyThreadGroup”)

how do i make a background thread that runs indefinitely on GAE with java? 如何使用Java在GAE上无限期运行后台线程?

AppEngine doesn't allow usage of traditional threads. AppEngine不允许使用传统线程。

You can, however, use the Modules API to spawn background tasks: https://developers.google.com/appengine/docs/java/modules/#Java_Background_threads https://developers.google.com/appengine/docs/java/javadoc/com/google/appengine/api/ThreadManager 但是,您可以使用Modules API产生后台任务: https : //developers.google.com/appengine/docs/java/modules/#Java_Background_threads https://developers.google.com/appengine/docs/java/的javadoc / COM /谷歌/应用服务引擎/ API / ThreadManager

Note that such background tasks can only be spawned on manual scaling instances. 请注意,此类后台任务只能在手动缩放实例上产生。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM