2010-06-24 47 views
-1

假设我的程序中有一个简单的函数。每当我调用该函数时,都会产生一个新线程或进程以执行该函数,或者仅在主线程内存空间中执行该函数。请帮助...任何指针将不胜感激。做一个java函数调用产生新的线程执行?

由于提前, Rupesh

+0

我有一种感觉,你现在正试图通过一个程序员的测试,而你显然不是。 – 2010-06-24 10:40:16

+0

是的,我是编程的新手,并且在脑海中对函数调用执行的概念有困惑。 – Rise 2010-06-24 10:44:23

+2

对不起...... Java没有任何指针:-) :-)。 – 2010-06-24 11:47:58

回答

4

当你调用Java中的方法将作为执行调用它的代码的同一个线程中运行。除非你明确地在方法体内创建一个新的线程。

+0

downvote的任何解释?国际海事组织 - 不好的建议 - – DaveJohnston 2010-07-01 09:11:52

-3

调用的函数在同一个线程中执行。

建议:您应该从C开始学习编程,然后Java(或其他任何东西)的底层功能不会让您感到困惑。

+3

-1 – 2010-06-24 11:46:58

+0

坏评论,国际海事组织。 – 2010-06-26 15:03:08

0

当你调用一个方法时,处理就进入该方法。几乎所有的语言都是这个通用规则。

0

正如戴夫约翰斯顿所说,不 - 除非你明确地创建一个新的线程。

当然,如果您调用的方法创建新线程作为其工作方式的一部分,您可以获得新线程。

线程和进程之间有区别。线程是Java的多任务解决方案(也是一个很好的解决方案)。一个进程是一个操作系统的东西。根据您的JVM,新线程可能会或可能不会在新进程中运行。

无论哪种方式,JVM中的所有线程都访问相同的内存空间。稍微偏执一点:JVM内存中有一些与CPU级内存缓存有关的同步问题 - 如果您正在进行严重的多线程编码,请参阅关于volatile关键字的文档。

您可以使用单独的内存运行多个JVM,例如,如果你从命令行运行单独的命令。

相关问题