当前位置: 首页 > news >正文

曹县 做网站的公司番禺人才网官网

曹县 做网站的公司,番禺人才网官网,销售产品单页面网站,网站登录模版 下载几年前#xff0c;我写过两篇关于用C#开发Linux守护进程的技术文章#xff0c;分别是《.NET跨平台实践#xff1a;用C#开发Linux守护进程.NET跨平台实践#xff1a;再谈用C#开发Linux守护进程 — 完整篇这就是本文的初衷。关于Linux Daemon程序的原理之类的#xff0c;已经… 几年前我写过两篇关于用C#开发Linux守护进程的技术文章分别是《.NET跨平台实践用C#开发Linux守护进程.NET跨平台实践再谈用C#开发Linux守护进程 — 完整篇这就是本文的初衷。关于Linux Daemon程序的原理之类的已经在之前的两篇文章中得到了一些表现因此本文就直接上代码不再在高大上的理论中去兜圈子了。using System; using System.Threading; using System.Timers; using System.Runtime.InteropServices; using System.IO; using System.Text;/************************************************* .Net Core/.Net5 Linux Daemon示例作者宇内流云 ************************************************/namespace daemon {class Program{static unsafe void Main(string[] args){// 进入守护状态int pid fork();if (pid ! 0) exit(0);setsid();pid fork();if (pid ! 0) exit(0);umask(0);// 关闭所有打开的文件描述符int fd_nul open(/dev/null, 0);for (var i 0; i fd_nul; i){if (i 3)Dup2(fd_nul, i);elseclose(i);}// 进入主方法 // 本示例的功能很简单就是定时向某个文件写入点内容 DaemonMain(args);}/// summary/// Daemon工作状态的主方法/// /summary/// param nameaargs/paramstatic void DaemonMain(string[] aargs){//启动一个线程去处理一些事情(new Thread(DaemonWorkFunct) { IsBackground true }).Start();//daemon时控制台输入、输出流已经关闭// 因此请不要再用Console.Write/Read等方法//阻止daemon进程退出(new AutoResetEvent(false)).WaitOne();}static FileStream fs;static int count 0;static void DaemonWorkFunct(){try{fs File.Open(Path.Combine(/tmp, daemon.txt), FileMode.OpenOrCreate);}catch{exit(1);return;}var t new System.Timers.Timer() { Interval 1000 };t.Elapsed OnElapsed;t.Start();}private static void OnElapsed(object sender, ElapsedEventArgs e){var s DateTime.Now.ToString(yyy-MM-dd HH:mm:ss) \n;var b Encoding.ASCII.GetBytes(s);fs.Write(b, 0, b.Length);fs.Flush();count;if (count 100){fs.Close();fs.Dispose();exit(0);}}[DllImport(libc, SetLastError true)]static extern int fork();[DllImport(libc, SetLastError true)]static extern int setsid();[DllImport(libc, SetLastError true)]static extern int umask(int mask);[DllImport(libc, SetLastError true)]static extern int open([MarshalAs(UnmanagedType.LPStr)] string pathname, int flags);[DllImport(libc, SetLastError true)]static extern int close(int fd);[DllImport(libc, SetLastError true)]static extern int exit(int code);[DllImport(libc, EntryPoint dup2, SetLastError true)]static extern int Dup2(int oldfd, int newfd);} }以上代码就是Linux环境中.NetCore或.Net5以上版本的.net程序以纯代码方式使自身成为标准的Linux守护进程的示例代码你完全可以将它关键部分借用到自己的真实项目中。使用中如果有什么问题或建议请加入本人的QQ群作进一点交流。注本文为 宇内流云 邮箱j66x163.com原创作品用c#开发原生的Linux守护进程相关技术及代码亦属本人首发如需转载请注明出处和作者同时没有得到本人亲自同意本文关键代码不得被“借鉴”到其他纸质作品中。
http://www.zqtcl.cn/news/100222/

相关文章:

  • 四川省住房与城乡建设厅官方网站免费域名解析ip
  • 芜湖网站建设价格这么做网站原型图
  • 做传奇网站怎么弄的南京微网站开发
  • 网站建设基础教程人教版网站域名选择的原则
  • u盘做网站网站建设公司公司介绍
  • 嘉兴网站排名优化报windows wordpress 轻量级
  • html5网站开发方案海珠网站建设公
  • 津做网站建筑网课平台
  • 佛山制作手机网站汕头网站定制
  • 网站域名解释怎么做济南集团网站建设
  • 网站怎么做咨询网站开发商
  • 建立网站的第一步网站的管理系统
  • 安远做网站做宣传册网站
  • 网站建设概况君隆网站建设
  • 富源县住房和城乡建设局网站备案信息 网站名
  • 做门窗的网站宁波附近的seo推广
  • 上海网站建设解决方案怎样设计网站
  • 龙华建站公司seo研究中心怎么样
  • 网站的大图标怎么做项目网站
  • 南京网站设计机构wap网站设计方案
  • 建站点怎么做网站wordpress 重写规则
  • 泰州做网站优化服装网站建设方案ppt
  • wordpress怎么设计网站微商城科技
  • 昆山营销型网站建设旅游网页制作模板教程
  • 企业网站开发时间淘客网站开发源代码
  • 传奇世界新开服网站html静态网页模板代码
  • 门户网站app开发网络服务提供者发现未成年通过网络发布
  • 编辑网站在线注册系统行业网站制作
  • 国外建设网站的软件西宁设计网站建设
  • 云服务器网站配置在线设计免费logo