V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  khan  ›  全部回复第 2 页 / 共 3 页
回复总数  42
1  2  3  
2015-04-30 15:58:51 +08:00
回复了 kingname 创建的主题 Visual Studio Code Visual Studio Code 一出,谁与争锋
呵呵, slick edit 表示很淡定. vs6 之后就不敢乱装了. 请神容易送神难.
@ryd994 在@RobberPhex的提示下, 正在看Ptmalloc2的 Free 部分实现. 证实了你的说法.
@ryd994 32bit 保护地址模式早就没有远程指针的概念了. 无法访问不属于本进程的地址吧
@ryd994 这种情况其实称之为野指针. 情况不可预估. 可能你会发现某个堆的数据突然变化了. 从而导致各种灵异现象.
另外如果 = NULL, 是空指针, 和内核地址重叠. 如果强制访问. 持有进程会被内核杀死.
@RobberPhex: 你说的内容有俩疑点
1. c++ 中我知道有new alloc 内存复用机制, 可以由 stdlib 来管理代码分配的内存.
但是 c 中的 alloc 就真的是直接调用系统的内存管理模块了. 应该不存在你说的 libc 管理内存的可能性.

2. mmap 是内存镜像文件. 我记得没错的话是处理超大型文件时不载入内存的一种实现方式. 直接用磁盘I/O来进行文件操作. 大文件载入内存导致爆内存的问题. 所以 mmap 本身应该可以认为是不占用内存的.

错漏之处还望斧正.
因为有很多地方都是这样判断

if (ptr == NULL) {
...do something
}

你如果不置空, 后面打算怎么复用.


free(ptr);
ptr = NULL; //如果不打算复用指针, 这行代码意义不大. 也没有危险或潜在威胁

所以这种代码 称之为防御性代码.
2015-04-30 10:38:00 +08:00
回复了 shom 创建的主题 C C++程序猿,来动动手帮帮忙吧
http://www.cppblog.com/Khan/archive/2008/06/23/54364.html

我写过一个 dylib, 可以获取系统信息. 支持 linux 和 win, 您可以直接使用源码
另外v2dx居然不支持语法高亮或 markdown, 真是相当蛋疼.
2015-04-30 10:28:08 +08:00
回复了 HelloWorld11 创建的主题 Java Java 多线程问题
@ryd994 你说的情况即使存在, 我认为也不是编译器的原因, 关键因素应该在于 libc 的实现. 所以现在 ISO 组织制定标准时, 都会指明某些函数必须实现可重入 (IEEE Std 1003.1 )
2015-04-30 10:23:32 +08:00
回复了 HelloWorld11 创建的主题 Java Java 多线程问题
@ryd994 函数是否可重入取决于编码习惯吧. 例如你在函数中使用了全局变量 会导致并发执行的情况下全局变量的读写不可预估. 这种状况就不可重入.
反之如果函数中没有互相干扰的访问资源, 则可重入.

你说的观点我有很多地方不清楚. 还请详细说明, 大家一起讨论讨论
2015-04-30 10:18:44 +08:00
回复了 lirau 创建的主题 Kindle kindle 最新固件换屏保教程或者 ROOT(越狱)教程来一发?
@lirau 对于手残党来说. 焊接难度更大.....
体死早. 800M 内存 换成字符串大概不过2G, 加上指针 和 字符串本身内存, 分块处理 合并不可少
8byte int_64 * 100,000,000L 需内存约 100M

位运算 比 / %都要省 cpu, 剩下的内存问题可以多段分块加载
判断低 bit位是否为1
2015-04-28 09:33:57 +08:00
回复了 spacewander 创建的主题 C 原来-->这梗五年前就有了啊
i++ + i++ 这种写法在9x 年的时候计算机老师就用来考试, 虽然后来我知道那老师也是一知半解
2015-04-28 09:27:21 +08:00
回复了 lirau 创建的主题 Kindle kindle 最新固件换屏保教程或者 ROOT(越狱)教程来一发?
@CodeingBoy 说法不严谨, 5.6.1+ 拆机串口可越狱
2015-04-28 09:21:37 +08:00
回复了 heian0224 创建的主题 Java 有关 PE
我也以为是 PE(Portable Executable) 格式
2015-04-28 09:19:27 +08:00
回复了 HelloWorld11 创建的主题 Java Java 多线程问题
@ryd994 跟动态语言没啥关系, 你即使用 c 也是这德性
2015-04-28 09:18:27 +08:00
回复了 HelloWorld11 创建的主题 Java Java 多线程问题
线程`独立栈` `共享堆`. 如果在没有上层作用域外部变量的情况下, 俩线程同时调用某个方法貌似不会发生什么. 如果有上层作用域外部变量, 那就是常规的抢占资源问题了. 外部变量的写行为不可预估.
cp 和 mv 不是在 /usr/bin 下么, 不过有可能依赖/ usr/lib 下的 so
2015-04-27 18:27:37 +08:00
回复了 EchoChan 创建的主题 macOS 为什么 os X 上得视频播放软件比 windows 平台的差那么多?
开发难度不高. ffmpeg vlc 挂上来就行了
另外 mplayerx 和 vlc 好像够用吧, 从 linux下开始用. 非重度用户
1  2  3  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1847 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 24ms · UTC 00:58 · PVG 08:58 · LAX 17:58 · JFK 20:58
Developed with CodeLauncher
♥ Do have faith in what you're doing.