社区
C语言
帖子详情
如何向线程函数中传入多个参数啊
victor5945
2003-08-30 01:29:12
我现在遇到了一个问题
现在我在写一个函数,可能同时有多个程序调用它,因此必须写成多线程方式。但是,我看了一下创建线程函数createThread,只能传入一个参数阿,怎么办啊。
它可能需要多个参数。
...全文
1016
10
打赏
收藏
如何向线程函数中传入多个参数啊
我现在遇到了一个问题 现在我在写一个函数,可能同时有多个程序调用它,因此必须写成多线程方式。但是,我看了一下创建线程函数createThread,只能传入一个参数阿,怎么办啊。 它可能需要多个参数。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
9731boy
2004-01-15
打赏
举报
回复
写成结构体吧.
fordcot
2004-01-15
打赏
举报
回复
要看是否会同时调用。
DotLSong
2004-01-15
打赏
举报
回复
只能传递指针以访问多个参数,这是 CreateThread 这样的函数参数类型决定的
一个简单的例子
class CExample
{
public:
void RunThread()
{
CreateThread(_ExampleThread, NULL, 0, this, 0);
}
...
private:
static DWORD WinAPI _ExampleThread(PVOID pParam)
{
CExample *pObj = (CExample*)pParam;
...
}
...
}
sharkhuang
2004-01-15
打赏
举报
回复
方结构或者对象里面
荒废的太阳
2004-01-14
打赏
举报
回复
有多个程序调用它就应该把它写成多线程吗?
(不大理解)
dddd8888
2004-01-14
打赏
举报
回复
用结构
shuneng
2004-01-13
打赏
举报
回复
用struct
要么用全局变量。
mudboy
2004-01-13
打赏
举报
回复
对呀,一般就是用结构体来实现的
boxban
2004-01-13
打赏
举报
回复
struct thread_args{
int a;
char str[100];
//...
};
void foo()
{
struct thread_args* args = new thread_args;
args->a = 100;
//...
createThead(...,thread_proc, args);
}
void* thread_proc(void* arg)
{
struct thread_args* args = (thread_args*)arg;
if(args->a == 100) printf("hello, thead!\n");
delete args;
}
fireseed
2003-08-30
打赏
举报
回复
写一个结构体,把你所需要传的参数都放到这个结构体里,然传参的时候传这个结构体的对象的指针不就行了?
如何向
线程
函数
传递
多个
参数
如何向
线程
函数
传递
多个
参数
向
线程
函数
传递
参数
2.2 向
线程
函数
传递
参数
清单2.4
中
,向std::thread构造
函数
中
的可调用对象,或
函数
传递一个
参数
很简单。需要注意的是,默认
参数
要拷贝到
线程
独立内存
中
,即使
参数
是引用的形式,也可以在新
线程
中
进行访问。再来看一个例子: void f(int i, std::string const& s); std::thread t(f, 3, "hello"); 代码创建了一个调用f(3, “hello”)的
线程
。注意,
函数
f需要一个std::string对象作为第二个
参数
,但这里使用的是字符串的字面
如何向
线程
函数
传递
多个
参数
?
我们先来看一个简单的程序: #include #include DWORD WINAPI ThreadFun(LPVOID pM) { printf("%s\n", pM); return 0; } int main() { printf("main thread\n"); HANDLE handle = CreateThread(NULL, 0, ThreadFun, "hel
关于向
线程
的运行
函数
传递一个
参数
和
多个
参数
1.
线程
创建 #include <pthread.h> int pthread_create(pthread_t *restrict tidp, const pthread_attr_t *restrict attr, void *(*start_rtn)(void *), void *restrict arg); // 返回:若成功返回0,否则返回错误编号
参数
说明: 第一个
参数
为指向
线程
标识符的指针。 第二个
参数
用来设置
线程
属性。 第三个
参数
是
线程
运行
函数
的起始地址。 最后一个
C#向
线程
中
传递
多个
参数
的解决方法(两种)
C#向
线程
中
传递
多个
参数
的解决方法(两种) 更新时间:2016年07月27日 11:02:42 投稿:mrr 这篇文章主要介绍了C#向
线程
中
传递
多个
参数
的解决方法(两种)的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下 问题: 对于多
线程
编程,很多时候往往需要向
线程
中
传递
多个
参数
,而C#
中
的
线程
只接收1个object类型的
参数
(如下): 1 2 3 4 5 6 Thread t = new Threa...
C语言
69,371
社区成员
243,082
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章