zoukankan      html  css  js  c++  java
  • 创建一个pthread线程时如何传递参数

    现在我写的源代码如下:
    #include <stdio.h>
    #include <pthread.h>


    typedef struct
    {
    char test_no1[12];
    char test_no2[20];
    short test_length;
    } tsm_info_def;

    void *SendSM(void *arg)
    {
    char No1[12];
    char No2[20];
    int Length;
    tsm_info_def *pSmInfo=(tsm_info_def *)arg;

    strcpy(No1,pSmInfo->test_no1);
    strcpy(No2,pSmInfo->test_no2);
    Length = pSmInfo->test_length;
    printf("%s%s%d\n",No1,No2,Length);
    }

    int main(void)
    {
    pthread_t id;
    int ret,i;
    char tmpstr[20];
    tsm_info_def SmInfo;
    strcpy(SmInfo.test_no1,"12345678901");
    strcpy(SmInfo.test_no2,"测试的内容");
    pSmInfo->test_length = 10;
    for(i=0;i<3;i++)
    {
    sprintf(str,"%d",i);
    strcat(SmInfo.test_no2,str);
    ret=pthread_create(&id,NULL,SendSM,(void *)&SmInfo);
    if(ret!=0)
    {
    fprintf(stderr,"Create pthread error!\n");
    }
    }
    pthread_join(id,NULL);
    return (0);
    }
  • 相关阅读:
    DNS bind9安装
    DHCP服务器
    RAID
    LVM
    box-pack
    display:flex和display:box布局浏览器兼容性分析
    Flex布局
    几种常见的浏览器以及内核
    display 垂直居中
    font-family 定义的最后为什么要加一句sans-serif
  • 原文地址:https://www.cnblogs.com/cy163/p/1269931.html
Copyright © 2011-2022 走看看