摘要: MinGW 沿袭了 Linux 下 gcc/g++ 的习惯,编译出的程序或者动态链接库(共享库)总是默认采用动态链接方式,需要系统中附带运行时库文件 libgcc-xx-xx.dll 和 libstdc++-xx.dll。那么如果我们不想发布程序时还要附带这两个运行库,该如何操作呢?通过参考 gcc... 阅读全文
posted @ 2015-12-05 17:50 小侠猫猫球 阅读(843) 评论(0) 推荐(0) 编辑
摘要: MinGW是 GCC 的 Windows 版本,稳定版已经到了 4.5.2,功能和性能上很好,感觉不比 Microsoft 自家的VC 差啊。但是 MinGW 下使用和创建 DLL 倒是要特别注意,问题主要集中在 g++ 编译器(C++ 的 GNU 版本编译器)对于 DLL 的函数输入以及输出的名称... 阅读全文
posted @ 2015-12-05 17:49 小侠猫猫球 阅读(2183) 评论(0) 推荐(0) 编辑
摘要: 通过一些实际项目的开发,发现这样一个现象,在 Windows 下可以通过指定 __declspec(dllexport) 定义来控制 DLL(动态链接库)中哪些函数可以导出,暴露给其他程序链接使用,哪些函数是 DLL 内部自己使用;而在 Linux 下不存在 dllexport 这样的指示字,默认情... 阅读全文
posted @ 2015-12-05 17:48 小侠猫猫球 阅读(2889) 评论(0) 推荐(0) 编辑
摘要: 在 Windows 下用 TDM-GCC(MinGW)开发 DLL 如果要用到数据同步锁,理论上可以采用 Windows API 提供的临界区实现(需要用到的函数有 InitializeCriticalSection、DeleteCriticalSection、EnterCriticalSectio... 阅读全文
posted @ 2015-12-05 17:39 小侠猫猫球 阅读(494) 评论(0) 推荐(0) 编辑
摘要: Java5引入的Concurrent并发库软件包中,提供了ReentrantLock可重入同步锁,用来替代synchronized关键字原语,并可提供更好的性能,以及更强大的功能。使用方法也很简单:publicfinalReentrantLocklock=newReentrantLock();...... 阅读全文
posted @ 2015-12-05 17:37 小侠猫猫球 阅读(258) 评论(0) 推荐(0) 编辑
摘要: Java5引入的Concurrent并发库软件包中的CyclicBarrier是一个同步辅助类,它允许一组线程互相等待,直到到达某个公共屏障点(commonbarrierpoint)。在涉及一组固定大小的线程的程序中,这些线程必须不时地互相等待,此时CyclicBarrier很有用。因为该barri... 阅读全文
posted @ 2015-12-05 17:36 小侠猫猫球 阅读(340) 评论(0) 推荐(0) 编辑
摘要: Java5开始引入的Concurrent并发软件包里面的CountDownLatch其实可以把它看作一个计数器,只不过这个计数器的操作是原子操作,同时只能有一个线程去操作这个计数器,也就是同时只能有一个线程去减这个计数器里面的值。CountDownLatch的一个非常典型的应用场景是:有一个任务想要... 阅读全文
posted @ 2015-12-05 17:35 小侠猫猫球 阅读(1424) 评论(0) 推荐(0) 编辑
摘要: Java5开始引入Conccurent软件包,提供完备的并发能力,对线程池有了更好的支持。其中,Executor框架是最值得称道的。Executor框架是指java5中引入的一系列并发库中与executor相关的一些功能类,其中包括线程池,Executor,Executors,ExecutorSer... 阅读全文
posted @ 2015-12-05 17:34 小侠猫猫球 阅读(289) 评论(0) 推荐(0) 编辑
摘要: 动态库尤其是共享库在 Linux 环境下普遍存在库文件名包含版本号的情况,比如 Linux 环境下经常会发现一个共享库的真实文件名是 libfoo.so.1.1.0,而同时会有多个指向该真实库文件的软连接短文件名:libfoo.so.1.1、libfoo.so.1、libfoo.so。那么我们在使用... 阅读全文
posted @ 2015-12-05 17:26 小侠猫猫球 阅读(375) 评论(0) 推荐(0) 编辑
摘要: 最近在给项目团队开发一个基于 Java 的通用的 XML 分析器时,设计了一个方法,能够读取现成的 XML 文件进行分析处理,当然 XML 都是采用 UTF-8 进行编码的。但是在用 UltraEdit 写了一个测试用的 UTF-8 XML 文件后,程序在读取该文件时发生错误:Parse Fatal... 阅读全文
posted @ 2015-12-05 17:22 小侠猫猫球 阅读(1448) 评论(0) 推荐(0) 编辑
摘要: 因为某个项目需要,为团队其他兄弟姐妹开发了一个 XML 分析处理器,并将其设计为一个类库,提供相应的 API 接口。为了方便大家的使用,需要生成对应的 JavaDoc 帮助文档,就像 JavaSE 标准库提供的 JavaDoc 那样。我的开发工具为 IntelliJ IDEA 12.1.6,本身提供... 阅读全文
posted @ 2015-12-05 17:21 小侠猫猫球 阅读(10660) 评论(2) 推荐(3) 编辑
摘要: MacBook Pro以及iMac等设备都具备雷电接口和USB 3.0接口,配合使用Mac OS X格式化的专用高速移动硬盘读写数据都非常快。那么这种硬盘可以在Linux下被读写吗?其实,Mac OS X采用的是其自家的HFS+文件系统格式,用它对移动硬盘进行格式化后,默认情况下Linux只能读,不... 阅读全文
posted @ 2015-12-05 17:16 小侠猫猫球 阅读(830) 评论(0) 推荐(0) 编辑
摘要: 我们知道Linux下的命令行终端具有颜色回显功能,用ls命令查看目录或者文件,终端会以不同的颜色来区分;使用vim命令行编辑器打开脚本或其他源程序代码会以语法高亮模式显示。而Mac OS X下的终端却始终以黑白两色来显示所有内容,显得很单调。其实我们也可以让Mac OS X下的终端像Linux那样拥... 阅读全文
posted @ 2015-12-05 17:10 小侠猫猫球 阅读(1010) 评论(0) 推荐(0) 编辑
摘要: 近日公司局域网突然变得非常慢,上网受到很大影响,不仅仅是访问互联网慢,就连访问公司内部服务器都感到异常缓慢。于是对本局域网网关进行测试:$ ping 10.10.26.254发现延时很大,而且丢包相当多,丢包率达到70%-90%。先怀疑是否有机器中毒在局域网内大量发arp包,于是在自己机器上用arp... 阅读全文
posted @ 2015-12-05 17:09 小侠猫猫球 阅读(1605) 评论(0) 推荐(0) 编辑
摘要: RealVNC是目前功能最全、性能最好的VNC商业软件套件,很多时候为了确保性能和功能的统一,还是大量地在使用RealVNC。最近在Fedora 22工作站上安装RealVNC Server 5.2.3最新版,碰到了一些问题,借这个机会,把RealVNC Server的安装、两种服务模式的配置(Se... 阅读全文
posted @ 2015-12-05 17:06 小侠猫猫球 阅读(1140) 评论(0) 推荐(0) 编辑
摘要: fcitx 小企鹅输入法框架已经越来越成熟,并且具备极高的性能,配合 Sun PinYin 智能输入法就和 Windows 下的搜狗百度等输入法几乎无二了。事实上,现在Linux版本的搜狗输入法正是基于fcitx小企鹅输入法纸做的!用下面的命令来卸载 ibus 并安装 fcitx 输入法框架及 Su... 阅读全文
posted @ 2015-12-05 17:01 小侠猫猫球 阅读(1745) 评论(0) 推荐(0) 编辑