<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>开发 on FredGan的技术与人生</title>
    <link>https://fredgan.com/categories/%E5%BC%80%E5%8F%91/</link>
    <description>Recent content in 开发 on FredGan的技术与人生</description>
    <generator>Hugo</generator>
    <language>zh-CN</language>
    <lastBuildDate>Tue, 14 Mar 2023 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://fredgan.com/categories/%E5%BC%80%E5%8F%91/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>人生哲理的计算机解释</title>
      <link>https://fredgan.com/post/20230314-the-it-interpretation-of-life-philosophy/</link>
      <pubDate>Tue, 14 Mar 2023 00:00:00 +0000</pubDate>
      <guid>https://fredgan.com/post/20230314-the-it-interpretation-of-life-philosophy/</guid>
      <description>&lt;h2 id=&#34;1-幸福的家庭都是相似的不幸的家庭各有各的不幸&#34;&gt;1. 幸福的家庭都是相似的，不幸的家庭各有各的不幸。&lt;/h2&gt;&#xA;&lt;p&gt;成功的返回码都是0，出错的返回码是各种各样的。&lt;/p&gt;</description>
    </item>
    <item>
      <title>谈谈质量</title>
      <link>https://fredgan.com/post/20210302-thinking-to-quality/</link>
      <pubDate>Tue, 02 Mar 2021 00:21:58 +0800</pubDate>
      <guid>https://fredgan.com/post/20210302-thinking-to-quality/</guid>
      <description>&lt;p&gt;今天部门内部开了一个茶话会，会议的主题就是谈谈质量。&lt;/p&gt;&#xA;&lt;p&gt;我们部门老大发表了一番自己对质量的看法，其中说到，质量是要求的满足程度，这是对质量一词的高度抽象的概括。本来是让大家都说说，我想了想，感觉没想清楚，就没发表意见了。&lt;/p&gt;</description>
    </item>
    <item>
      <title>GDB调试技巧</title>
      <link>https://fredgan.com/post/20200706-gdb/</link>
      <pubDate>Mon, 06 Jul 2020 14:08:05 +0800</pubDate>
      <guid>https://fredgan.com/post/20200706-gdb/</guid>
      <description>&lt;h2 id=&#34;一直接调试&#34;&gt;一、直接调试&lt;/h2&gt;&#xA;&lt;h3 id=&#34;11-启动与停止&#34;&gt;1.1 启动与停止&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;run&lt;/code&gt; / &lt;code&gt;r&lt;/code&gt;  启动程序&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;set args &amp;lt;arg1&amp;gt; &amp;lt;arg2&amp;gt;&lt;/code&gt; 设置程序运行参数&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;finish&lt;/code&gt; 结束当前函数的运行，函数剩余部分会执行完毕&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;return&lt;/code&gt; 立即结束当前函数执行并返回，可带参数返回&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;12-调试指令&#34;&gt;1.2 调试指令：&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;step&lt;/code&gt; / &lt;code&gt;next&lt;/code&gt; 执行下一行（进入函数）/（不进入函数）&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;disassemble&lt;/code&gt; 查看汇编命令&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;stepi&lt;/code&gt; / &lt;code&gt;nexti&lt;/code&gt; 执行下一条汇编指令 (进入函数)/（不进入函数）&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;jmp&lt;/code&gt; 跳转指令&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;info r&lt;/code&gt; 查看寄存器值。&lt;code&gt;info&lt;/code&gt; 可以简写为 &lt;code&gt;i&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;bt&lt;/code&gt; 查看调用路径&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;堆栈用途:&lt;/strong&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Redis的使用方法</title>
      <link>https://fredgan.com/post/20190103-redis/</link>
      <pubDate>Thu, 03 Jan 2019 11:33:01 +0800</pubDate>
      <guid>https://fredgan.com/post/20190103-redis/</guid>
      <description>&lt;h2 id=&#34;一-工具查看&#34;&gt;一、 工具查看&lt;/h2&gt;&#xA;&lt;p&gt;可以直接使用 &lt;code&gt;redisClients&lt;/code&gt; 软件界面操作查看&lt;/p&gt;&#xA;&lt;h2 id=&#34;二-命令行&#34;&gt;二、 命令行&lt;/h2&gt;&#xA;&lt;p&gt;&lt;code&gt;redis-cli -h 127.0.0.1 -p 6379&lt;/code&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;21-基础命令&#34;&gt;2.1 基础命令&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;keys *&lt;/code&gt;      // 列举所有的key&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;expire &amp;lt;key&amp;gt; &amp;lt;seconds&amp;gt;&lt;/code&gt; // 设置某个key的过期时间（单位：秒）&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;ttl &amp;lt;key&amp;gt;&lt;/code&gt; // 显示key的过期时间（单位：秒）【返回&lt;code&gt;-1&lt;/code&gt;表示永久 &lt;code&gt;-2&lt;/code&gt;表示key不存在】&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;persist &amp;lt;key&amp;gt;&lt;/code&gt; // 将key的时间设置为永久&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;set&lt;/code&gt; &lt;code&gt;getset&lt;/code&gt; 都会将key设置为永久&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;expireat &amp;lt;key&amp;gt; &amp;lt;1540000000&amp;gt;&lt;/code&gt; // 在某个时间点过期&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;code&gt;pexpire&lt;/code&gt; &lt;code&gt;pttl&lt;/code&gt; &lt;code&gt;pexpireat&lt;/code&gt; 跟上面一样，只是单位是毫秒&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
