errno

1-文件IO―open/close函数

匿名 (未验证) 提交于 2019-12-03 00:34:01
函数原型: <unistd.h> <fcntl.h> int open( const char *pathname, int flags); int open( const char *pathname, int flags, mode_t mode); 参数说明: 返回值说明: flags选项一般有以下几种常用方式: O_SYNC:以同步方式打开文件 O_CREAT:若打开的文件不存在则自动创建该文件 O_TRUNC:如果打开的文件存在并且以可写方式打开,则将文件的数据全部清空 O_NONBLOCK:以非阻塞式打开文件,无论有无数据或等待,都会立即返回进程之中 O_APPEND:每次打开文件后,新写入的数据会追加到文件末尾,如果不指定,则新写入的数据会从文件起始位置开始写,这会覆盖原来的数据。 O_EXCL:若打开的文件存在则出错,如果设置了O_CREAT的话,会先去检查文件是否存在,不存在则创建该文件,存在的话将出错,可用于测试一个文件是否存在。 函数原型: int close ( int fd); 参数fd:已打开的文件的文件描述符 返回值:成功返回0,失败-1 使用open和close打开并关闭一个文件 #include <unistd.h> #include <stdio.h> #include <fcntl.h> #include <errno.h> int main(

Can&#039;t create table &#039;./store/#sql-b2c_1a.frm&#039; (errno: 150)解决方法

匿名 (未验证) 提交于 2019-12-03 00:22:01
工作中两次遇到这样的问题,在这里记一下: 错误原因大概上有四种: 4.还有要建立外键的话,要先建立索引。没有建立索引也会出错。 我的错误原因是1, 外键的引用类型不一样,但是改的时候却出现了错误: MYSQL错误重命名为''到''(错误:150) 解决办法就是直接删除相关表用hibernate重新生成 文章来源: Can't create table './store/#sql-b2c_1a.frm' (errno: 150)解决方法

信号

匿名 (未验证) 提交于 2019-12-03 00:22:01
来自: https://blog.csdn.net/dawn_sf/article/details/74177899 信号与中断的区别: 信号与中断的相似点: (1)采用了相同的异步通信方式; (2)当检测出有信号或中断请求时,都暂停正在执行的程序而转去执行相应的处理程序; (3)都在处理完毕后返回到原来的断点; (4)对信号或中断都可进行屏蔽。 信号与中断的区别: (1)中断有优先级,而信号没有优先级,所有的信号都是平等的; (2)信号处理程序是在 用户态 下运行的,而中断处理程序是在 核心态 下运行; (3)中断响应是及时的,而信号响应通常都有较大的时间延迟。 在Linux下当我们想强制结束一个程序的时候,我们通常会给它发送一个信号然后该进程捕捉到信号,再然后该进程执行一定操作最 终 被终止. 信号是UNIX和Linux系统响应某些条件而产生的一个事件,接收到该信号的进程会相应地采取一些行动。通常信号是由一 个错 误产生 的。但它们还可以作为进程间通信或修改行为的一种方式,明确地由一个进程发送给另一个进程。一个信号的产生叫生 成,接收到一个信号叫捕获。信号的捕捉这篇可能不会详细的说到,因为我想给它专门讲一个博客,因为信号捕捉的实例也是蛮多 的. 首先我们认识一下这些信号: $ kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5)

errno错误对照表

匿名 (未验证) 提交于 2019-12-03 00:09:02
many open files 由上可见Linux对错误宏的定义。 头文件 /usr/include/asm-generic/errno-base.h 的源码: #ifndef _ASM_GENERIC_ERRNO_BASE_H #define _ASM_GENERIC_ERRNO_BASE_H #define ENOENT2/* No such file or directory */ #define ENOEXEC8/* Exec format error */ #define ECHILD10/* No child processes */ #define EAGAIN11/* Try again */ #define ENOMEM12/* Out of memory */ #define EACCES13/* Permission denied */ #define EFAULT14/* Bad address */ #define ENOTBLK15/* Block device required */ #define EEXIST17/* File exists */ #define ENODEV19/* No such device */ #define ENOTDIR20/* Not a directory */ #define EISDIR21/* Is a

BrokenPipeError: [Errno 32] Broken pipe 解决

匿名 (未验证) 提交于 2019-12-03 00:03:02
在windows中运行python可能会出现这个问题 解决方式在错误帮助里已经说明: 添加一个freeze_support()函数 Add support for when a program which uses multiprocessing has been frozen to produce a Windows executable. (Has been tested with py2exe, PyInstaller and cx_Freeze.) One needs to call this function straight after the if name == ‘ main ’ line of the main module. For example: from multiprocessing import Process, freeze_support def f ( ) : print 'hello world!' if __name__ == '__main__' : freeze_support ( ) Process ( target = f ) . start ( ) ``` If the freeze_support ( ) line is omitted then trying to run the frozen executable will

yum [Errno 12] Timeout on

匿名 (未验证) 提交于 2019-12-02 23:52:01
今天新安装一台CentOS,进行yum安装时出现以下问题提示 http://mirror.vodien.com/centos/7.6.1810/updates/x86_64/Packages/perl-5.16.3-294.el7_6.x86_64.rpm: [Errno 12] Timeout on http://mirror.vodien.com/centos/7.6.1810/updates/x86_64/Packages/perl-5.16.3-294.el7_6.x86_64.rpm: (28, 'Operation too slow. Less than 1000 bytes/sec transferred the last 30 seconds') Trying other mirror. 解决办法: [root@localhost ~]# yum clean all [root@localhost ~]# yum makecashe

文件操作之打开文件(fopen、_wfopen、fopen_s、_wfopen_s)――C语言

匿名 (未验证) 提交于 2019-12-02 23:49:02
1 #include <stdio.h> 2 3 void OpenFile(FILE **map); //打开文件 4 void JudgeOpenSuc(FILE *judge); //判断文件打开是否成功 5 6 int main() 7 { 8 FILE *fp; 9 10 OpenFile(&fp); 11 JudgeOpenSuc(fp); 12 13 return 0; 14 } 15 16 void OpenFile(FILE **map) 17 { 18 (*map) = fopen("E:my.txt", "a+"); 19 } 20 21 void JudgeOpenSuc(FILE *judge) 22 { 23 if (judge != NULL) 24 { 25 printf("Open successfully\n"); 26 } 27 else 28 { 29 printf("Open failure\n"); 30 } 31 } 1 #include <stdio.h> 2 3 const int SUC = 0; 4 5 void OpenFile(FILE **map, errno_t *err); //打开文件 6 void JudgeOpenSuc(errno_t err); //判断文件打开是否成功 7 8 int main() 9 {

posix_quic-master socket关闭函数以及流关闭

匿名 (未验证) 提交于 2019-12-02 23:37:01
//关闭quicsocket QuicCloseSocket(conn); //跟踪这个函数 int QuicCloseSocket(QuicSocket sock) { EntryPtr entry = EntryBase::GetFdManager().Get(sock); if (!entry || entry->Category() != EntryCategory::Socket) { DebugPrint(dbg_api, "sock = %d, return = -1, errno = EBADF", sock); errno = EBADF; return -1; } auto socket = std::dynamic_pointer_cast<QuicSocketEntry>(entry); socket->Close(); QuicSocketEntry::DeleteQuicSocketEntry(socket); DebugPrint(dbg_api, "sock = %d, return = 0", sock); return 0; } //CLose()函数 socket->Close(); int QuicSocketEntry::Close() { if (socketState_ == QuicSocketState_Closed) return