问题标签 [beginthread]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
636 浏览

c++ - _beginthread 中的 ShellExecute

我需要运行例如:

作为新线程,但我不知道如何。我试过这个:

但显然它是错误的,无法编译。我该怎么做?

0 投票
1 回答
842 浏览

c++ - c++ _beginthread 不能将字符串作为参数传递

我想使用如下示例代码启动多个线程:

但是,我无法让它工作(分配错误)。我究竟做错了什么?

0 投票
3 回答
756 浏览

c++ - malloc 后自由函数出错

下面的代码会导致 C++ 在行上崩溃:free(arg)。我试图防止发生内存泄漏,但我无法释放我存储在堆内存中的数据。有人可以帮我解决这个问题吗?

请注意,free(args)工作正常。

0 投票
1 回答
80 浏览

c++ - _beginthread 疑似内存泄漏

所以,我有一些问题,我怀疑内存泄漏,为了测试我写了这个小代码。通过评论以下行:

代码运行良好。但是当我取消注释时,程序在几千个线程后崩溃了。当我使用 try/catch 时,程序只是在 try 函数中崩溃了。任何人都可以在这里帮助我吗?

0 投票
1 回答
358 浏览

c++ - 线程没有运行,为什么?

我编写了一个简单的测试应用程序来证明线程工作:

此应用程序的输出是:

连续不断,这正是我期望看到的......现在在一个更大的项目中,我有一个基类:

最后是实现线程类并提供blnStart方法的派生类:

创建类 clsOpenLDVrdr 的实例并调用 blnStart 方法:

我可以在调试器中看到正在调用“blnStart”并单步执行所有内容......但线程永远不会运行。

还尝试使用 _beginthreadex 而不是 _beginthread:

没有不同。这里存在某种不兼容问题,因为我在本文开头创建的简单示例有效,并且两个版本之间没有太大区别。除了它的使用方式之外……第一个简单示例是作为 Windows 控制台应用程序创建的。我遇到困难的项目在 DLL 中。

我正在使用调试器附加到 DLL 并逐步执行代码,该代码一直有效,直到它在 beginthread 调用之后进入循环,然后它只是永远循环并且永远不会进入线程。

我刚刚尝试了以下方法,添加了一个带有标准 C 函数的独立线程:

然后我修改“_beginthread”调用如下:

遗憾的是结果是一样的,没有调用 threadTest 函数。但是会返回一个有效的句柄。

发现这个:

无法调用dll文件中的线程

看起来很有趣,可以解释我正在经历的奇怪行为。

0 投票
3 回答
710 浏览

regex - 在 perl 中使用正则表达式从文本块中提取子字符串或行

我有一个变量,里面有一些文本

我如何使用正则表达式来获取行/test/this/is/a/directory

我试过这个:

但这只是继续打印整个文本块。

0 投票
1 回答
33 浏览

c++ - 启动类函数作为线程失去参考

我正在开发一个 Windows 程序,该程序在线程中进行艰苦的工作,并且 GUI 停留在主循环中(在这种情况下,我使用 ImGui OpenGL3)

但是随着实现更多函数,参数在启动 work_thread 时超出范围,并且 beginthread 启动的函数接收到显示为 NULL 的指针(实际上没有更改代码,但包含另一个库会引发这种情况)

发生了什么以及如何防止这种情况发生

这是我的代码的原始表示

通常代码运行没有问题,但是其他例程和job_a_threadstarter发生了一些变化,因为pParams引用了NULL

我在 x64 Windows 上使用 GNU G++ 和 mingw,使用 c++11 开关编译并与 -mwindows 链接

0 投票
1 回答
80 浏览

c++ - 未能在线程中创建纹理

在我正在创建的应用程序中,我使用了几个按需加载的纹理。直到现在我在主进程中创建了它们并且一切正常。现在我想将它们加载到一个单独的线程中。所以我用beginthread调用加载和绑定纹理的函数加载了纹理,但GL因SHADER_ERROR(1282)失败。我认为OpenGL可能需要一个初始初始化,但我一无所知

我正在用 C++ 编写代码,使用 GL3 和 GLFW 以及 STB 在 WinX64 上使用 GCC 进行图像处理

这里的代码

LOG1 只是记录助手

0 投票
2 回答
723 浏览

c++ - 多线程:thread 或 process.h - C++

我开始研究多线程。而且我发现了 2 种使用它的方法 ic C++。首先是通过thread

第二个是process

那么,如果有的话,有什么区别?如果有区别,什么时候应该使用一个而不是另一个?

0 投票
0 回答
389 浏览

c++ - ilink32 错误 错误:从 C:\SOURCE\...\TEMP\XXX.OBJ 引用的未解析的外部“__beginthread”

我参加了一个最初在 RAD studio 10.x 中构建的项目,现在我正在使用 RAD studio 11。(我不知道这些信息是否重要)。我正在尝试构建这个项目,除了另一个错误之外,我还收到了这个错误,但使用 __endthread 而不是 __beginthread 并且在另一个 .obf 文件中。

这些文件位于指定的路径中,因此编译器需要找到它们,但我不确定问题是否是因为编译器找不到这些文件或其他东西。

我寻找这个错误并试图将项目更改为动态 RTL,但它没有解决这个问题。

任何帮助将不胜感激 TIA