原本代码:

链接

int skip = !!fork() + 2*(!!fork());
for (uint32_t i=skip;i!=INT_MAX;i+=4)
{
}

这个是多进程加速循环的代码,写的的确很精妙。(虽然for循环的条件有问题。)
但我认为还可以改进:不用两个连续的感叹号,一个就够了。没有检查返回值。

改进:

下面是我的改进版本。定义了两个函数,虽然warning连篇但是能正确运行。
warning的原因主要是用了隐式声明-Wimplicit-function-declaration和默认类型描述符-Wimplicit-int,只是偶尔geek一下而已,平时不会这么写的。

extern inline _Noreturn perrorNexit(const char *p)
{ perror(p), exit(-1); }static inline fork_(register i)
{register pid = fork();return ~pid?!pid<<i:perrorNexit("fork_: ");
}main() {return printf("i'm No.%d\n", fork_(0) | fork_(1) | fork_(2));
}
  • NEW feature:
  1. 增加返回值检查
  2. 允许方便地把进程数扩展到8、16等

运行结果:

转载于:https://www.cnblogs.com/tjua/p/7745857.html

一个fork短码的扩展版本相关推荐

  1. php decrypt,GitHub - qiling/php-decrypt: PHP Decrypt是一个跨平台用来解密PHP源码的扩展

    PHP Decrypt PHP Decrypt是一个跨平台用来解密PHP源码的扩展,可以解密目前市场上大部分加密的源码(除了OpCode混淆-Swoole Compile). 特点 兼容 OPcach ...

  2. php decrypt,GitHub - amhoho/php-decrypt: PHP Decrypt是一个跨平台用来解密PHP源码的扩展

    PHP Decrypt PHP Decrypt是一个跨平台用来解密PHP源码的扩展,可以解密目前市场上大部分加密的源码(除了OpCode混淆-Swoole Compile). 特点 兼容 OPcach ...

  3. 号卡推广管理系统源码 手机卡流量卡推广网站源码 带后台版本

    源码简介: 号卡推广管理系统源码 手机卡流量卡推广网站源码 带后台版本 下载链接 网盘源码   密码:3lev 背景 前台页面演示 一.号卡推广管理系统源码简介 该号卡推广管理系统是一款基于Web的软 ...

  4. 【知乎】怎么成为一个优秀的程序员,而不是一个优秀的码农?

    怎么成为一个优秀的程序员,而不是一个优秀的码农? 9 条评论 分享 默认排序按时间排序 98 个回答 3844赞同反对,不会显示你的姓名 萧井陌 微信公众号:炼瓜研究所 技术社区 - 3844 人赞同 ...

  5. spring-boot ffmpeg 搭建一个音频转码服务

    2019独角兽企业重金招聘Python工程师标准>>> 利用FFMPEG实现一个音频转码服务 提供一个音频转码服务,主要是利用ffmpeg实现转码,利用java web对外提供htt ...

  6. 英语字母表计算机,计算机汇编课程设计CCCC.pdf_给定一个英文ascii码文件,统计文件中英文字母的频率,以十进制形式输出。,wwwwwxxxxx...

    1.给定一个英文ASCII码文件,统计文件中英文字母的频率,以十进制形式输出. 2.用递归计算n!(n≥50), 以十进制数输出 输入一个不小于50的整数n,用递归计算n!, 以十进制数输出 3.存储 ...

  7. Spring源码——容器扩展ApplicationContext

    前言 内容主要参考自<Spring源码深度解析>一书,算是读书笔记或是原书的补充.进入正文后可能会引来各种不适,毕竟阅读源码是件极其痛苦的事情. 本文主要涉及书中第六章的部分,依照书中内容 ...

  8. 微信小程序自定义模态框,官方版本与自定义可扩展版本

    微信小程序自定义模态框,官方版本与自定义可扩展版本 提示:文章最后有源码,可自取 文章主要通过模仿官方的模态框进行自定义模态框的设计,我将会先讲述原理,然后给出源码,最后指出一些需要注意的地方 提示: ...

  9. beast linux加密,PHP-Beast v2.2发布,PHP源码加密扩展

    PHP-Beast v2.2发布,PHP源码加密扩展 发布时间:2016-07-08 14:53:04来源:红联作者:baihuo PHP-Beast v2.2 发布了,此版本主要增加了以下功能: 加 ...

最新文章

  1. self-attention竟然没用?
  2. java短_Java中的最短代码和最低延迟
  3. Problem A: 素数对
  4. 让表单文本框只读不可编辑的方法
  5. QT中读写.ini配置文件的操作
  6. 亚马逊云服务(AWS)中国与毕马威中国建立战略合作伙伴关系
  7. java绘制半透明图片_如何使绘制的图像在Java中透明
  8. anti-wrinkle_anti-wrinkle cream是什么意思
  9. zz backgroundworker C#
  10. 搭建一个企业级的Vue工程!
  11. java项目连接Oracle配置文件
  12. flex invalidation 机制
  13. 【aRsenal-1】用R创建Word和PowerPoint文档
  14. linux 校园网 热点,Linux/Ubuntu 16.04 使用校园网客户端Dr.com DrClient 有线连网,同时开启WiFi热点...
  15. 因用了NeatUpload大文件上传控件而导致Nonfile portion 4194304 bytes错误的解决方法...
  16. c语言学生综合测评系统_学生综合评价系统
  17. SIPp 安装及使用
  18. html文本特效代码逐个出现,JS特效文字逐个显示
  19. FXCG: 日内交易与波段交易有什么区别
  20. ios学习之模仿韩寒one.一个UI

热门文章

  1. struts2 与 sping 整合 控制器中 service注入的问题
  2. Redis 高级特性(3)—— 持久化及数据恢复
  3. python异常机制
  4. 关于python 中的__future__模块
  5. 条件随机场(CRF) - 1 - 简介
  6. Rust和C / C ++的跨语言链接时间优化LTO
  7. RGB-D对红外热像仪和毫米波雷达标定
  8. 觉SLAM的主要功能模块分析
  9. 摄像头Camera标定Calibration原理Theory
  10. Android RecyclerView(和SnapHelper) 实现类似ViewPager的效果