多进程-day3

news2025/1/12 8:46:58

1、使用多进程完成两个文件的拷贝,父进程拷贝前一半,子进程拷贝后一半,父进程回收子进程的资源

#include <myhead.h>
int main(int argc, const char *argv[])
{
    FILE *fp1=NULL;
    FILE *fp2=NULL;
    if((fp1=fopen("./simple.txt","r"))==NULL)
    {
    	perror("fopen error");
        return -1;
     }        
     if((fp2=fopen("./suc.txt","w"))==NULL)
     {
        perror("fopen error");
        return -1;
     }
 
    pid_t pid=fork();
	//判断父子进程
    if(pid>0)
    {
		puts("父进程");
        //计算光标大小
        fseek(fp1,0,SEEK_END);
        size_t line=ftell(fp1);
        fseek(fp1,0,SEEK_SET);
 
        char str[5]="";
        //输入数据
        while(fgets(str,sizeof(str),fp1)!=NULL)
        {
			//光标移动到中间结束
            if(ftell(fp1)==line/2)
            {
                break;
           	}
			//写入数据
            fputs(str,fp2);
        }
    }
    else if(pid==0)
    {
		puts("子进程");
		//计算光标大小
        fseek(fp1,0,SEEK_END);
        size_t line=ftell(fp1);
		fseek(fp1,0,SEEK_SET);
		//光标移动到中间
		fseek(fp1,line/2+1,SEEK_SET);
        char ptr[10]="";
     	//输入数据
		while(fgets(ptr,sizeof(ptr),fp1)!=NULL)
        {
			if(ftell(fp1)==line)
				break;
            //写入数据
            fputs(ptr,fp2);
        }
        exit(EXIT_SUCCESS);
    }

    fclose(fp1);
    fclose(fp2);
    wait(NULL); 
    return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1459579.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何使用CloakQuest3r获取受安全服务保护的网站真实IP地址

关于CloakQuest3r CloakQuest3r是一款功能强大的纯Python工具&#xff0c;该工具可以帮助广大研究人员获取和查看受Cloudflare和其他安全服务商保护的网站真实IP地址。 Cloudflare是一种广泛采用的网络安全和性能增强服务&#xff0c;而CloakQuest3r的核心任务就是准确识别隐…

Uibot (RPA设计软件)智能识别信息+微信群发助手(升级版)———课后练习2

解决痛点&#xff1a; Excel如何计算两个日期之间相差月数 方法&#xff1a; 1、首先打开要进行操作的Excel表格。 2、打开后选中要计算相差月数的单元格。 3、然后输入公式&#xff1a;DATEDIF(A2,B2,"m")&#xff0c;输入完成后点击回车键。 4、在弹出的窗口中&a…

[经验] 玄殿社区qq堂4.2 #笔记#媒体

玄殿社区qq堂4.2 1、玄殿 玄殿&#xff0c;位于中国北京市的紫禁城内&#xff0c;是明清两代帝王祭天的场所。玄殿前殿为皇帝向神明祭拜的地方&#xff0c;中殿为祭天的主要场所&#xff0c;后殿为宋代遗址。玄殿规模庞大&#xff0c;身为中国传统建筑的代表之一&#xff0c;…

python+selenium 定位到元素,无法点击的解决方法

今天小编就为大家分享一篇pythonselenium 定位到元素,无法点击的解决方法&#xff0c;具有很好的参考价值&#xff0c;希望对大家有所帮助。一起跟随小编过来看看吧 selenium.common.exceptions.WebDriverException: Message: Element is not clickable at point (234.75, 22)…

JS基础(语法结构变量数据类型运算符流程控制)

JS基础(语法结构/变量/数据类型/运算符/流程控制) 目录 JS基础(语法结构/变量/数据类型/运算符/流程控制)什么是js&#xff1f;注释语法语法结构引入方式【1】script标签内部直接书写js代码【2】script标签src属性引入外部js代码 JS基础数据类型变量与常量变量的定义常量的定义…

2000-2022各省产业结构高级化合理化指数(含原始数据、计算过程+计算结果)

2000-2022各省产业结构高级化合理化指数&#xff08;含原始数据、计算过程计算结果&#xff09; 1、时间&#xff1a;2000-2022年 2、指标&#xff1a;国内生产总值、第一产业增加值、第二产业增加值、第三产业增加值、总就业人数、第一产业就业人数、第二产业就业人数、第三…

Maven的初步认识

Maven 1,Maven 简介 Maven是Apache软件基金会的一个开源项目,是一个优秀的项目构建工具,他用来帮助开发者管理项目中的jar包以及jar之间的依赖关系,完成项目的编译,测试,打包发布等工作. Maven中的概念 pom(Project Object Model 项目对象模型) maven 管理项目的根目录下 都…

DOC主题 WordPress博客、文库、资讯主题

主题专为博客、自媒体、资讯类的网站设计开发&#xff0c;适合做博客、文库、帮助中心的主题。 演示站&#xff1a;做好服务 - 服务器故障、网站故障、宝塔问题快速排查与修复 截图 代码非常简练&#xff0c;主题下载地址&#xff1a;DOC主题.zip

CAN_相关的测试用例+测试方法+测试工具使用+输出测试报告

测试类型: 第一:通信测试 第二:间接网络管理测试 第三:AUTOSAR网络管理测试 第四:诊断协议栈Diva测试 第五:诊断协议补充测试 第六:Bootloader测试 第七:网…

【数据结构】队列「介绍+完整代码+调试」

1.队列 1.1队列的概念及结构 队列&#xff1a;只允许在一端进行插入数据操作&#xff0c;在另一端进行删除数据操作的特殊线性表&#xff0c;队列具有先进先出 FIFO(First In First Out) 入队列&#xff1a;进行插入操作的一端称为队尾 出队列&#xff1a;进行删除操作的一端称…

忘记管理员密码

1、在/home/jenkins/config.xml中删除&#xff1a; <useSecurity>true</useSecurity><authorizationStrategy class"hudson.security.FullControlOnceLoggedInAuthorizationStrategy"><denyAnonymousReadAccess>false</denyAnonymousRea…

windows安装以及切换使用nodejs多版本

1 安装nvm nvm是一个简单的bash脚本&#xff0c;它是用来管理系统中多个已存的Node.js版本。 可以先把系统已有的node卸载掉&#xff0c;也可不卸载&#xff0c;但是以防没必要的冲突&#xff0c;尽量还是卸掉。 1.1 下载nvm 下载地址&#xff1a;https://github.com/corey…

Flutter踩坑记之四

又踩了一个大坑&#xff0c;Flutter分享到微信的&#xff0c;Android一直正常&#xff0c;苹果的不行 搞了3天&#xff0c;反复的核对苹果开发者中的相应参数设置与info的相关参数 找了很多贴子&#xff0c;最后还是通过手工加日志&#xff0c;发现在registryWxAPI的时候就返…

【Vuforia+Unity】AR03-圆柱体物体识别

1.创建数据库模型 这个是让我们把生活中类似圆柱体和圆锥体的物体进行AR识别所选择的模型 Bottom Diameter:底部直径 Top Diameter:顶部直径 Side Length:圆柱侧面长度 请注意&#xff0c;您不必上传所有三个部分的图片&#xff0c;但您需要先为侧面曲面关联一个图像&#…

笔试与面试

目录: 笔试与面试Java程序员如何应对笔试面试中的基本礼仪如何解除面试的紧张情绪如何做好自我介绍如何做好项目介绍面试中的多种问法如何让你的回答更到位被面试官问住了该怎么办面试中的一面二面与终面如何应对HR面试如何有效地与HR洽谈薪水如何了解公司福利待遇如何做好面试…

老年人手环的设计与实现

随着我国进入老年化社会&#xff0c;患有慢性病的老年人也越来越多&#xff0c;是需要时刻关注身体的生理指标以更好地知道个人的身体健康状况。过去对人体生理参数的检测都是当生病住院的时候通过医院的设备来检测&#xff0c;而人们缺乏日常的检测手段。而随着单片机和传感器…

【办公类-16-07-04】合并版“2023下学期 中班户外游戏(有场地和无场地版,一周一次)”(python 排班表系列)

背景需求&#xff1a; 把 无场地版&#xff08;贴周计划用&#xff09; 和 有场地版&#xff08;贴教室墙壁上用&#xff09; 组合在一起&#xff0c;一个代码生成两套。 【办公类-16-07-02】“2023下学期 周计划-户外游戏 每班1周五天相同场地&#xff0c;6周一次循环”&…

使用 Docker 安装 Kibana 8.4.3

使用 Docker 安装 Kibana 8.4.3 一. 安装启动 Kibana 8.4.3二. 简单使用2.1 向 Elasticsearch 发送请求2.2 搜索2.3 整体页面 前言 这是我在这个网站整理的笔记,有错误的地方请指出&#xff0c;关注我&#xff0c;接下来还会持续更新。 作者&#xff1a;神的孩子都在歌唱 安装k…

【Linux系统化学习】动静态库 | 软硬链接

目录 硬链接和软链接 硬链接 软链接 动态库和静态库 静态库 静态库的生成 静态库的使用 将库打包和使用 动态库 动态库的生成 动态库的使用 库搜索路径 硬链接和软链接 硬链接 上篇文章我们说到真正找到磁盘上的文件并不是文件名&#xff0c;而是inode。其实在…

CTFshow web(sql注入171-175)

web171 还得先爆表名 -1 union select 1,2,group_concat(table_name) from information_schema.tables where table_schema database()-- 注意这里已经提示你了&#xff0c;只要知道是ctfshow_user&#xff0c;就可以拿到flag -1 union select 1,2,password from ctfshow_user…