重装完 KDE 后发现在 dolphin 中无法挂载 U 盘了,提示 unable to authenticate。但是用 udisksctl 却可以挂载:yyc@TDesk run > udisksctl mount -b /dev/sdc1==== AUTHENTICATING FOR org.freedesktop.udisks2.filesystem-mount-other-seat ===挂载 Generic Mass-Storage (/dev/sdc1) 需要身份验证Authenticating as: rootpassword:==== AUTHENTICATION CO Read More
假设有若干对象存于一个 vector 中:class Widget;vector vw;后来由于某些原因,从该容器中删除了若干对象(参考erase-remove idiom )。对于 vector 和 string 来讲, erase() 和 clear() 并不会改变容器的capacity,也就不会改变他们的内存占用。swap() 本意是用来交换两个容器的内容( Iterators, pointers, and references),但我们可以用他来快速将容器的 capacity 调整为 合适 的大小:vector(vw).swap(vw);巧妙之处在于, vector 的拷贝构造函数仅仅 Read More
有时需要支持 C 的接口,但这并不复杂。对于 vector 来讲, \(v[0]\) 的地址 \(\&v[0]\) 即可作为数组指针传递给 C API: 1: // Legacy C API. 2: extern void doSomething(const int* pInts, size_t numInts); 3: 4: vector v; 5: // ... 6: // Operations on v. 7: // ... 8: 9: if (!v.empty())10: {11: doSomething(&v[0], v.size());12: }也许有人会说:可以用 Read More
2013/11/01 | Comments大约一年前,我接触了 Java 中的 Btrace 能够不停机查看线上 JVM 运行情况的特性让我艳羡不已。 另外还有强悍的 jStack 和 jConsole 来进行运行期侦测,JVM 的工业级强度果然不是盖的。当时公司技术方面也遇到了一些瓶颈,一部分原因是 CPython 本身的 IO 模型问题, 另一方面也和早期代码写的极不工整脱不了关系。万般无奈之下,我们用 Jython 推翻重做了主要业务,效果立竿见影,但同时也把真实问题给规避掉了。在这之后我们在 JVM 的领导下,走上了康庄大道。但我心中始终还有一个梗, 就是想对性能遇到瓶颈的 Pytho Read More