C# 托管资源和非托管资源(Dispose、析构函数) https://www.cnblogs.com/herenzhiming/articles/9691524.html资源分类:托管资源指的是.NET可以自动进行回收的资源,主要是指托管堆上分配的内存资源。托管资源的回收工作是不需要人工干预的,有.NET运行库在合适调用垃圾回收器进行回收。 非托管资源指的是.NET不知道如何回收的资源,最常见的一类非托管资源是包装操作系统资源的对象,例如文件,窗口,网络连接,数据库连接,画刷,图标等。这类资源,垃圾回收器在清理的时候会调用Object.Finaliz
ICE相关链接 ZeroC IceGrid介绍及demo构建(使用IceBox)ice grid 第一篇ICE通信之IceGrid服务(二)IceGrid注册器复制Ice服务详解及应用_IceGrid(01)IceGrid应用 配置手册https://blog.csdn.net/abcdefg367/category_8275964.htmlICE通信框架Windows下ICE框架的安装与配置ICE专题:实战分布式的Hello Word 【原创】https://doc.zeroc.com/ice/3.7/
c语言linux TCP长连接 socket收发范例 断开自动重连 原文链接:https://blog.csdn.net/chenhao0568/article/details/103420615c语言linux TCP长连接 socket收发范例 断开自动重连改进1:加入接收超时。可以做别的事,等有接收才响应#include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <assert.h>#include <string.h>#i
linux epoll 开发指南-【ffrpc源码解析】 linux epoll 开发指南-【ffrpc源码解析】摘要关于epoll的问题很早就像写文章讲讲自己的看法,但是由于ffrpc一直没有完工,所以也就拖下来了。Epoll主要在服务器编程中使用,本文主要探讨服务器程序中epoll的使用技巧。Epoll一般和异步io结合使用,故本文讨论基于以下应用场合:主要讨论服务器程序中epoll的使用,主要涉及tcp socket的相关api。Tcp socket 为异步模式,包括socket的异步读写,以及监听的异步操作。本文不会过多讨论API的细节,而是专注
让事件飞——Linux eventfd 原理 让事件飞——Linux eventfd 原理让事件飞 ——Linux eventfd 原理与实践原文作者:杨阳eventfd/timerfd 简介目前越来越多的应用程序采用事件驱动的方式实现功能,如何高效地利用系统资源实现通知的管理和送达就愈发变得重要起来。在Linux系统中,eventfd是一个用来通知事件的文件描述符,timerfd是的定时器事件的文件描述符。二者都是内核向用户空间的应用发送通知的机制,可以有效地被用来实现用户空间的事件/通知驱动的应用程序。简而言之,就是eventfd用来
线程以及pthread库的使用 https://blog.csdn.net/weixin_38102771/article/details/91351126一.什么是线程你可以想象你一边听歌一边打游戏,如果是操作系统会怎么做呢?先执行 ListenMusic 再执行 PlayGame,还是先执行 PlayGame 再执行 ListenMusic 呢?好像都不太合适。为了实现这个目的,就需要引入线程这个概念。线程是 CPU 调度的最小执行单位,你可以创建一个线程用于 ListenMusic,再创建一个线程去 PlayGame,这样操作系
Linux串口编程详解 Linux串口编程详解(阻塞模式、非阻塞模式、select函数)之前一直觉得串口编程很简单,这两天仔细研究后发现串口里的各种参数还挺复杂,稍不注意就容易出错,这里总结一下网上的各种文章及自己的理解与实践。open 函数功能描述:用于打开或创建文件,成功则返回文件描述符,否则返回-1,open返回的文件描述符一定是最小的未被使用的描述符#include<fcntl.h>int open(const char * pathname,int flags);int open(const ch
串口VMIN和VTIME设置 linux 下串口编程VTIME和VMIN的设置Python termios 模块,tcgetattr() 实例源码 struct termios attr; tcgetattr(fd,&attr); attr.c_cc[VMIN]=255; attr.c_cc[VTIME]=255; tcflush(fd,TCIFLUSH); tcsetattr(fd,TCSANOW,&attr);VMIN:[0-255]VTIME:[0-255]VMIN =0,VTIME=0:读不
python创建虚拟串口 在linux上创建两个虚拟串口A和B,将A口的数据发送给B,在外部可以通过向A口write,在B口read。#! /usr/bin/env python#coding=utf-8import ptyimport os,statimport selectimport timeimport termiosdef mkpty(): #open pty master1,slave = pty.openpty() slaveName1 = os.ttyname(slave) master2
FIFO测试 #include <stdio.h>#include <limits.h>#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>#include <unistd.h>#define FIFONAME "./fifo"#define BUFFERSIZE 1000#define MAXSIZE 1000int writefifo(){ int fd
2021-04-20 https://www.cnblogs.com/cpw6/p/10364986.htmlhttps://www.cnblogs.com/liuyisai/p/5992511.html一、NFS服务简介 NFS 就是 Network FileSystem 的缩写,最早之前是由sun 这家公司所发展出来的。 它最大的功能就是可以透过网络,让不同的机器、不同的操作系统、可以彼此分享个别的档案 (share files)。所以,你也可以简单的将他看做是一个文件服务器 (file server) 呢!这个 NF
yum install 失败 https://blog.csdn.net/weixin_45621658/article/details/110734514原因:centos6的默认源在2012年-12月左右被官方搞掉了下列是错误详情Bash[root@c8-20 ~]# yum makecacheLoaded plugins: fastestmirrorLoading mirror speeds from cached hostfileYumRepo Error: All mirror URLs are not usin
线程同步 /*int pthread_create(pthread_t *restrict tidp, const pthread_attr_t *restrict attr, void *(* startrun)(void *), void *restrict arg);void pthread_exit(void *rval_ptr)int pthread_join(pthread_t tid,void **rval_prt)void pthread_cleanup_push( void (.
进程间通信 /*int shmget(key_t key,size_t size,int shmflg)int *shmat(int shmid,const void *shmaddr,int shmflg)int shmdt(const void *shmaddr)int shmctl(int shmid,int cmd,struct shmid_ds *buf)*/#include <stdio.h>#include <unistd.h>#include <sys/.