cat /proc/sys/fs/file-max定义了Linux,安卓或者Unix或者ios系统的最大的fd的数量,一般服务器会比手机等小型设备大很多。
for(int i = 0; i < MAX_CONNECTION; i++) //用户需要遍历所有的fd
if(FD_ISSET(allConnection[i],&readfds))
handleEvent(allConnection[i]);
// if(res == 0) handle timeout, res < 0 handle error
for(int i = 0; i < res;i++)
handleEvent(events[n]);
一般情况的内存情况:
进程1的地址空间: 进程2的地址空间:
{ {
-------映射----->
<<=====映射=====file:/dev/fb
---------映射----->
} }
共享内存情况的内存情况:
进程1的地址空间: 进程2的地址空间:
{ {
<<=====映射=== file:/dev/fb ==映射=====>>
} }
git reset --hard commit_num 会把本地文件修改,会把你修改过的没有提交的文件也修改了,一句话:会把本地文件全部修改。
git revert commit_num 会去掉commit_num的一次提交。
git checkout commit_num 就会切换到一个叫 “no branch”的分支上,不再是master分支了,master分支还是原始的,git checkout 某个目录一般。
git checkout 没有冲突的话,本地修改不会变。
git pull 只是合并一下本地和服务器上的代码,合并一下别人修改过的已经提交服务器的代码,自己本地修改的尚未提交服务器的代码不会被合并修改。
当服务器上别人已经提交的代码和自己修改的代码有冲突,需要双方协调解决。
{
handleEvent(events[n]); }