首页

文章

c语言实现多线程

发布网友 发布时间:2022-04-20 03:22

我来回答

2个回答

热心网友 时间:2022-05-13 04:16

目录:

Linux操作系统,C语言实现多线程

Windows操作系统,C语言实现多线程

Windows下的多线程(不带停止)

Linux操作系统,C语言实现多线程:

#include <stdio.h>
#include <stdlib.h>
#include <pthread.h>
void * ThreadOne ( void * threadArg )
{
    printf ( "线程开始啦,参数是:%s\n" , (char *)threadArg );
    return NULL;
}
int main ( void )
{
    pthread_t ThreadID;   /* 记录线程标识符 */
    void * waitingResult;  /* 等待线程退出的等待结果 */
    int errorCode;         /* 记录线程的错误代码 */
    char * aMessage = "这是线程的参数" ;
    /* 创建并启动线程ThreadOne。若返回值非零,则线程创建失败 */
    errorCode = pthread_create( &ThreadID, NULL, ThreadOne, aMessage );
    if ( errorCode != 0 )
    {
        printf ("线程ThreadOne创建失败。错误代码:%d\n", errorCode );
        return EXIT_FAILURE ;
    }
    /* 等待线程标识符为的ThreadID的线程结束 */
    errorCode = pthread_join( ThreadID, &waitingResult );
    if ( errorCode != 0 )
    {
        printf ( "等待线程退出等待失败。错误代码:%d\n" , errorCode ) ;
        return EXIT_FAILURE ;
    }
    printf( "线程的返回值是%p\n", waitingResult );
    return EXIT_SUCCESS ;
}

Windows操作系统,C语言实现多线程:

#include <stdio.h>
#include <windows.h>
DWORD APIENTRY ThreadOne ( LPVOID threadArg )
{
    printf ( "线程开始啦,参数是:%s\n" , (char *)threadArg );
    return 0;
}
int main ( void )
{
    HANDLE hThread;  /* 记录线程句柄 */
    DWORD ThreadID;  /* 记录线程ID号 */
    DWORD waitingResult;  /* 等待线程退出的等待结果 */
    DWORD threadExitCode;  /* 记录线程的返回值 */
    char * aMessage = "这是线程的参数" ;
    /* 创建并启动线程ThreadOne,返回值为线程句柄,赋值给hThread */
    hThread = CreateThread ( NULL, 0L, ThreadOne, (LPVOID)aMessage, 0L, &ThreadID );
    if ( hThread == NULL )
    {
        printf ("线程ThreadOne创建失败。错误代码:%lu\n", GetLastError() );
        return EXIT_FAILURE ;
    }
    /* 等待线程句柄为的hThread线程结束 */
    waitingResult = WaitForSingleObject ( hThread, INFINITE );
    if ( waitingResult == WAIT_FAILED )
    {
        printf ( "等待线程退出等待失败。错误代码:%lu\n" , GetLastError() ) ;
        return EXIT_FAILURE ;
    }
    if ( GetExitCodeThread ( hThread , &threadExitCode ) )
        printf ( "线程的返回值是%lu\n", threadExitCode ) ;
    else
        printf ( "获取线程的返回值获取失败。错误代码:%lu\n" , GetLastError() ) ;
    return EXIT_SUCCESS ;
}

Windows下的多线程:(不带停止)

#include <stdio.h>
#include <windows.h>
DWORD WINAPI oxianchen(LPVOID lpParam);
int main(int argc, char *argv[])
{
int num=0;
CreateThread(NULL,NULL,oxianchen,&num,NULL, NULL);
while(1)
{
num++; 
printf("主线程! %05d\n",nu***eep(40);
}
return 0;
}
DWORD WINAPI oxianchen(LPVOID lpParam)
{
int* a=lpParam;
while(1) 
{
++*a; 
printf("副线程! %05d 0x%p\n",*a,a); 
Sleep(80);
}
return 0;
}

热心网友 时间:2022-05-13 05:34

package cn.sdeit.file;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.Scanner;
public class ReadTxt
{
private int id;
public String getArticle(String path,int id)
{
String url = path+id+".txt";
String string = "";
String allString = "";
File file=new File(url);
try
{
BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(file),"utf-8"));
while((string=reader.readLine())!=null)
{
allString += string+"\r\n";
}
} catch (FileNotFoundException e)
{
e.printStackTrace();
} catch (IOException e)
{
e.printStackTrace();
}
return allString;
}
}

八月中国最凉快的地方 八月份哪里最凉快,去哪旅游好?美丽的地方 乱字同韵字是什么意思 华硕笔记本电脑触摸板怎么开笔记本电脑触摸板怎么开启和关闭_百度知 ... 陕西职务侵占案立案准则 结婚后我的恋情维系了十年,怎么做到的? 玉米仁子饭产自哪里 中国期货交易所的交易品种有哪些? 历史要怎么读,有啥诀窍 高中历史诀窍 年终会活动策划方案 深度解析:第一财经回放,探索财经新风向 逆水寒手游庄园怎么邀请好友同住 逆水寒手游 逆水寒不同区可以一起组队吗? 逆水寒手游 逆水寒怎么进入好友世界? 逆水寒手游 逆水寒怎么去别人的庄园? 使用puppeteer实现将htmll转成pdf 内卷时代下的前端技术-使用JavaScript在浏览器中生成PDF文档 【译】将HTML转为PDF的几种实现方案 变形金刚08动画怎么样 变形金刚08动画的问题 变形金刚08动画日语版剧情介绍 高分!换显卡nvidia控制面板被我卸了,重新安装显卡驱动后没了nvidia控... 我的nvidia控制面板被卸载了 怎么找回啊 卸载后 这个画面看着很奇怪_百 ... 李卓彬工作简历 林少明工作简历 广东工业职业技术学院怎么样 郑德涛任职简历 唐新桂个人简历 土地入股的定义 ups快递客服电话24小时 贷款记录在征信保留几年? 安徽徽商城有限公司公司简介 安徽省徽商集团新能源股份有限公司基本情况 安徽省徽商集团有限公司经营理念 2019哈尔滨煤气费怎么有税? 快手删除的作品如何恢复 体育理念体育理念 有关体育的格言和理念 什么是体育理念 万里挑一算彩礼还是见面礼 绿萝扦插多少天后发芽 绿萝扦插多久发芽 扦插绿萝多久发芽 炖牛排骨的做法和配料 网络诈骗定罪标准揭秘 “流水不争先”是什么意思? mc中钻石装备怎么做 为什么我的MC里的钻石块是这样的?我想要那种。是不是版本的问题?如果是... 带“偷儿”的诗句 为何c多线程的输出数据不完整 浪庭音响语音怎么点歌? 撞妖小说txt全集免费下载 高级经济师怎么考 高级经济师怎么申报条件 考经济师有没有必要报培训班? 高级经济师报名时间是什么? 高级经济师怎样考? 北京高级经济师培训机构哪个好 什么是高级经济师,高级经济师有什么作用 怎么样才知道音箱有没有蓝牙? 添加网络打印机,找不到工作组里面的打印机 添加网络打印机时找不到共享打印机怎么办? 在另一台电脑上添加网络打印机时找不到共享打印机... 用钱币来占卜一天可以占卜几次 金钱卦占卜6币如何排序 win10连不上局域网内的共享打印机,提示找不到打印... 金钱卦占卜,占得六爻,请问动爻是哪个?打个比方... 易经金钱卦的占卦的爻变的爻辞是易经里哪看的? 添加网络打印机时,到了浏览打印机时,可以看到共... C语言多线程的概念 c的多线程实现 C语言多线程的操作步骤 c语言多线程 C语言多线程实现 c语言中怎样创建多线程? c语言多线程问题 c多线程有几种实现方法 C语言多线程的介绍 C语言多线程线程同步可以干什么 C语言多线程的优势 浪庭音响L-82怎么连接话筒 山东省传染病医院怎么样? 济南传染病医院什么样 山东济南市传染病医院的科室 在山东治乙肝,济南传染病医院和省立医院那个更好? 山东省内医科类大学排名? 山东省内的医学类的大学排名? 枣庄市王开传染病医院怎么样? 山东医科大学属于几本啊
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com