gpt4 book ai didi

java - 内存分配给从 servlet 执行的主类?

转载 作者:行者123 更新时间:2023-11-30 07:20:59 25 4
gpt4 key购买 nike

我有一个 servlet,它使用 main method() 执行一个类,您通常可以通过命令行启动它。

在像tomcat、weblogic服务器这样的Web容器中,Web容器将有自己定义的堆空间和线程数来执行Web应用程序发送的请求。

如果我在 servlet 中启动一个带有 main method() 的类,分配给该类的内存和线程将是多少?

最佳答案

通过调用 MyClass.main() 调用该方法时(如您在评论中所述),您的方法被称为 main 并不重要 - 它只会就像任何其他方法调用一样。这样的

  • 执行期间使用的任何内存都将分配在 tomcat 的堆上
  • 将在处理 servlet 请求的线程中执行。因此,servlet 在 main() 退出之前不会继续处理。

使用非 Tomcat 堆存储的最简单方法是通过 Runtime.exec() 生成一个新的 VM 进程并在那里运行您的程序。这将导致相当大的开销,因为启动虚拟机可能需要一段时间。

如果您可以在 tomcat 的 VM 中运行,但希望与 servlet 处理并行执行任务,则必须实现自己的线程处理。

关于java - 内存分配给从 servlet 执行的主类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37582230/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com