2011-09-23 31 views
1

我做了一些研究,并且我了解到,如果我运行一个程序,系统会自动在一个新线程中启动它。它看起来像什么样的DLL?DLL函数是否会自动在新线程中运行?

从DLL一些伪代码,extern_func()从DLL导出:

func1() 
{ 
    while(true) ...do something; 
} 
extern_func() 
{ 
    ...do something 
    func1(); 
    ...do something else 
} 

现在如果呼叫extern_func()在我的计划,将在一个新的线程中运行的功能或做我必须这样做明确?

+2

没有任何操作系统可以这样工作。特别是Windows。 –

+0

当涉及COM +时,事情会变得更有趣......但这是一个完全不同的故事;-) – 2011-09-23 23:08:22

回答

4

不,调用另一个DLL中的方法不会自动启动一个新的线程。

5

程序启动时,会创建一个线程。这通常被称为“主”线程。

如果您没有明确地创建其他线程或使用创建其他线程的函数,那么即使您调用来自DLL /库的函数,您的所有代码也将在该主线程中运行。

相关问题