<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[等死老鼠的瞎猫]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/chenyoooooooo</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; chenyoooooooo]]></copyright><item><title><![CDATA[loginsight，一款通用的日志分析工具]]></title><link>https://blog.youkuaiyun.com/chenyoooooooo/article/details/117645423</link><guid>https://blog.youkuaiyun.com/chenyoooooooo/article/details/117645423</guid><author>chenyoooooooo</author><pubDate>Mon, 07 Jun 2021 06:15:19 +0800</pubDate><description><![CDATA[Loginsight是一款开源的通用日志分析工具，能快速打开大文件，且集成了时间线、过滤窗、正则搜索、分享等功能，有效帮助理清线索、记录思路、整理分析结果
官网
下载地址
文档与详细介绍
GitHub
Gitee
时间线

时间线类似书签功能，按时间顺序排列节点，但比书签功能更丰富地。通过在主窗口里右键标记，可以将那一行新增为时间线的一个节点。
刚开始分析日志时，时间线是书签和线索，可以用不同的颜色分类不同模块或是不同线索主线，并把一些思考记录到备注里；当日志分析出眉目后，要整理出问题原因或者发生的时序，这]]></description><category></category></item><item><title><![CDATA[loginsight跨平台日志查看工具]]></title><link>https://blog.youkuaiyun.com/chenyoooooooo/article/details/108371007</link><guid>https://blog.youkuaiyun.com/chenyoooooooo/article/details/108371007</guid><author>chenyoooooooo</author><pubDate>Wed, 02 Sep 2020 21:44:58 +0800</pubDate><description><![CDATA[看日志，是研发的日常工作，相信你已经从各种报错日志中查出许多BUG，但也被冗长、复杂的日志困扰过无数次。
在日常工作中，我也经常痛苦于看日志，一般是这些日志长得面目狰狞：

日志文件太大，打开都很困难
日志文件里的信息错综复杂，各个模块的时序纠缠不清
日志搜集引擎导出的文件被切割成多个文件，很难联系上下文来看

不仅日志看的不顺眼，看日志的工具也不蹭手：

搜索完关键词，上下跳几次，就忘记要干什么了（我是谁，我在哪，我在干嘛？）
想按某个关键字过滤日志，有的工具还不支持
刚刚自己分析得头头是道，一叫人过来就]]></description><category></category></item><item><title><![CDATA[qt如何实现大文件的加载和显示]]></title><link>https://blog.youkuaiyun.com/chenyoooooooo/article/details/106177264</link><guid>https://blog.youkuaiyun.com/chenyoooooooo/article/details/106177264</guid><author>chenyoooooooo</author><pubDate>Sun, 17 May 2020 17:13:54 +0800</pubDate><description><![CDATA[最近研究了下如何用qt的原生控件来加载和显示大文件（&gt;1G），分享下一些摸索经验。
下文源码：loginsight
文件的内存映射
在开始qt部分之前，我们先了解一个概念——文件的内存映射。
我们知道一般读文件用到的API是fopen/fread/fclose，或者是open/read/close，这种方式都需要内核帮忙作一次拷贝。
linux中有一个函数叫mmap（windows也有类似功能），可以避免这样的一次拷贝。
请看这幅对比图（图片来源：https://www.jianshu.com/p/e]]></description><category></category></item><item><title><![CDATA[swig director内存管理]]></title><link>https://blog.youkuaiyun.com/chenyoooooooo/article/details/73130718</link><guid>https://blog.youkuaiyun.com/chenyoooooooo/article/details/73130718</guid><author>chenyoooooooo</author><pubDate>Mon, 12 Jun 2017 17:54:04 +0800</pubDate><description><![CDATA[swig中的director是一个由c/c++往上层语言调用的封装。以下笔者将以java为上层语言讲解director的内存管理。Demo源码先列举代码：my.h#ifndef MY_H
#define MY_H#include <string>class My
{
public:
    virtual ~My(){}
    virtual std::string text(const std:]]></description><category></category></item><item><title><![CDATA[android studio编译c++]]></title><link>https://blog.youkuaiyun.com/chenyoooooooo/article/details/73123954</link><guid>https://blog.youkuaiyun.com/chenyoooooooo/article/details/73123954</guid><author>chenyoooooooo</author><pubDate>Mon, 12 Jun 2017 16:46:54 +0800</pubDate><description><![CDATA[基本配置不论使用哪种方式，首先需要配置ndk路径。依次打开file -> project structure -> SDK Location在Android Ndk Locaiton中填入你的ndk路径DeprecateNDKBuild这种方法已被官方标记未废弃，将在gradle 3.0被正式弃用。
在gradle.properties中加入android.useDeprecatedNdk=true]]></description><category></category></item><item><title><![CDATA[Native线程attach方式]]></title><link>https://blog.youkuaiyun.com/chenyoooooooo/article/details/71367895</link><guid>https://blog.youkuaiyun.com/chenyoooooooo/article/details/71367895</guid><author>chenyoooooooo</author><pubDate>Sun, 07 May 2017 20:23:44 +0800</pubDate><description><![CDATA[概述写过jni的知道，可以从native线程回调java方法。而回调java方法时，必要的两个标准步骤是调用前attach native线程，调用结束后detach native线程。为方便后文表述，代码先行。我们先定义一个Java类：public class Foo {
    static {
        System.loadLibrary("foo");
    }
    public]]></description><category></category></item><item><title><![CDATA[Local Reference Overflow]]></title><link>https://blog.youkuaiyun.com/chenyoooooooo/article/details/71244307</link><guid>https://blog.youkuaiyun.com/chenyoooooooo/article/details/71244307</guid><author>chenyoooooooo</author><pubDate>Fri, 05 May 2017 21:14:41 +0800</pubDate><description><![CDATA[概述有幸碰到过这样一个错误：JNI ERROR (app bug): local reference table overflow (max=512)错误的意思是JVM的局部引用表溢出了。局部引用表的作用是在Native方法返回前，保存局部引用，一旦其返回，则将局部引用表中的对象回收。简单理解，即为垃圾回收服务的。如何获取一个局部引用呢？有两种方法： 
1. 通过NewLocalRef创建一个局部引]]></description><category></category></item></channel></rss>