DLL加载方式
自动加载 在编译时指定DLL,当程序启动运行的时候,会首先加载相关DLL 手动加载 在编译时不指定DLL,在运行的时候通过调用LoadLibrary()来加载DLL 相应的,在使用完毕,要使用FreeLibrary()来释放DLL 手动加载关注点 对于DLL 函数声明的地方加上e...
自动加载 在编译时指定DLL,当程序启动运行的时候,会首先加载相关DLL 手动加载 在编译时不指定DLL,在运行的时候通过调用LoadLibrary()来加载DLL 相应的,在使用完毕,要使用FreeLibrary()来释放DLL 手动加载关注点 对于DLL 函数声明的地方加上e...
加载 双击.exe的时候,该.exe被加载到内存当中,形成一个进程 在这个过程中,DLL也会被加载到内存中 DLL被加载后处于被占用的状态,不能对它进行修改删除等操作 DLL被卸载后,可以对它进行操作 对于占用同一个DLL的不同进程,不可比较DLL中变量的地址,因为DLL数据段每...
相关 dll 包含所有的代码编译成的指令 lib 包含一个列表,表明dll含有哪些符号,每个符号对应在dll里的位置 工程 使用VS新建项目 选择Win32控制台应用程序 应用程序类型:DLL 附加选项:空项目 创建工程 环境 添加cpp文件 右键工程属性,选择C/C++ 选定代...
位置 项目属性 C/C++ 代码生成 运行库 选项 /MT /MTd /MD /MDd 区别 这些区别是针对VC来讲 /MT /MTd指静态编译(多线程静态版本),使用lib以及MSVC相关的静态库 定义了它后,编译器把LIBCMT.lib 安置到OBJ文件中,让链接器使用LIB...
相关 .lib文件 静态库中直接包含有代码段和数据段 在链接的过程中,是直接把里面的东西链接过来,打包成可执行文件 .exe运行的时候不依赖.lib文件 工程 使用VS新建项目 选择Win32控制台应用程序 应用程序类型:静态库 附加选项:空项目 创建工程 注意 使用该静态库的V...
命令 ps -ef 查看并显示进程 UID 进程所属用户ID PID 进程ID:进程的唯一标识 PPID 父进程ID Nginx进程模型 以1个master进程,1到多个worker进程 这种工作机制对外服务的 责任: master 监控进程 不处理具体业务,专门监控worker...
Nginx目录结构 auto/: 存放编译相关的脚本,可执行文件configure会用到存放在这儿的东西 cc/: 检查编译器的脚本 lib/: 检查依赖库的脚本 os/: 检查操作系统类型的脚本 types/: 检查平台类型的脚本 CHANGES 修复的bug,功能的说明 co...
Nginx编译与安装 ./configure进行编译之前的配置 --prefix 指定最终安装目录:默认值 /usr/local/nginx --sbin-path 用来指定可执行文件目录:默认值 /sbin/nginx --conf-path 用来指定配置文件目录:默认值 co...
操作命令 git stash 将本地代码stash到仓库中 git pull 将远程代码拉取到本地中 git stash pop 将仓库中的代码合并到本地最新代码中 git stash list 查看stash的历史版本 git stash drop 删除最新的stash git...
1. 对本地代码库进行回滚 2. 对远程代码库版本进行回滚 强推. 此时本地的版本落后于远程的版本,使用强制推送覆盖远程分支