<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[suese的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/suese</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; suese]]></copyright><item><title><![CDATA[C#多线程Lock锁定的使用例子(多线程线程同步）]]></title><link>https://blog.youkuaiyun.com/suese/article/details/53640882</link><guid>https://blog.youkuaiyun.com/suese/article/details/53640882</guid><author>suese</author><pubDate>Wed, 14 Dec 2016 15:52:36 +0800</pubDate><description><![CDATA[这个例子是一个模拟多个人在多台提款机上同时提取一个账户的款的情况。

在存取的过程中 可能 A线程取了100   而B线程那边还看见账户上没少掉那100快，所以导致数据不统一，赋值出现问题。

下面代码则可以测试出加上Lock锁定 与 不加的区别。

 

先上两个图。

第一个（加了Lock的程序）：



 

加了的 数据每一条都是完整无错的，因为他们执行Lo]]></description><category></category></item><item><title><![CDATA[c#多线程抓取网页内容（转）]]></title><link>https://blog.youkuaiyun.com/suese/article/details/53640805</link><guid>https://blog.youkuaiyun.com/suese/article/details/53640805</guid><author>suese</author><pubDate>Wed, 14 Dec 2016 15:47:49 +0800</pubDate><description><![CDATA[在《爬虫/蜘蛛程序的制作（C#语言）》一文中，已经介绍了爬虫程序实现的基本方法，可以说，已经实现了爬虫的功能。只是它存在一个效率问题，下载速度可能很慢。这是两方面的原因造成的：

1.       分析和下载不能同步进行。在《爬虫/蜘蛛程序的制作（C#语言）》中已经介绍了爬虫程序的两个步骤：分析和下载。在单线程的程序中，两者是无法同时进行的。也就是说，分析时会造成网络空闲，分析的时间越长，下载]]></description><category></category></item><item><title><![CDATA[内容更新 2014-08-13]]></title><link>https://blog.youkuaiyun.com/suese/article/details/37729779</link><guid>https://blog.youkuaiyun.com/suese/article/details/37729779</guid><author>suese</author><pubDate>Sat, 12 Jul 2014 22:21:51 +0800</pubDate><description><![CDATA[新闻评论更多>>


中国玩不起足球
 建个足球场都是奢侈
    中国，作为一个强大的国家，吃着薯条喝着可乐啤酒看着别人世界杯的我们总是激情澎湃，但转身下楼就迷失在了钢筋混凝土森林中。我们玩不起足球，它太过奢侈。




原来松下摆了Tesla一道……--高工锂电

三星暗淡：帝国困局（下）

三星暗淡：帝国困局（ 中）

德国对中国的看法为何很负面

中国玩]]></description><category></category></item><item><title><![CDATA[【Qt】字符编码、乱码的一点总结]]></title><link>https://blog.youkuaiyun.com/suese/article/details/33314005</link><guid>https://blog.youkuaiyun.com/suese/article/details/33314005</guid><author>suese</author><pubDate>Sun, 22 Jun 2014 12:24:08 +0800</pubDate><description><![CDATA[[cpp] view
 plaincopy






QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));  
QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));  
QTextCodec::setCodecForT]]></description><category></category></item><item><title><![CDATA[搭建Windows下的Go开发环境]]></title><link>https://blog.youkuaiyun.com/suese/article/details/32922137</link><guid>https://blog.youkuaiyun.com/suese/article/details/32922137</guid><author>suese</author><pubDate>Sat, 21 Jun 2014 13:40:52 +0800</pubDate><description><![CDATA[原创文章，转载请注明：转载自Soul
 Apogee
本文链接地址：Go语言学习笔记（一）
 ： 搭建Windows下的Go开发环境


最近突然对Go语言产生了兴趣，主要是因为在使用python的时候遇到了一些不爽的问题，然后发现了Go。Go是Google出的一个动态语言，语法和C++接近，性能也非常的好，而且还支持编译成exe发布，并且不依赖任何虚拟机（其实是打包在exe里面了），]]></description><category></category></item><item><title><![CDATA[MySQL的Replace into 与Insert into ..... on duplicate key update ...真正的不同之处]]></title><link>https://blog.youkuaiyun.com/suese/article/details/31538027</link><guid>https://blog.youkuaiyun.com/suese/article/details/31538027</guid><author>suese</author><pubDate>Tue, 17 Jun 2014 00:01:23 +0800</pubDate><description><![CDATA[今天听同事介绍oracle到mysql的数据migration，他用了Insert into ..... on duplicate key update ...，我当时就想怎么不用Replace呢，于是回来就仔细查了下，它们果然还是有区别的，看下面的例子吧：


1 Replace into ...
1.1 录入原始数据
mysql> use test;
Database change]]></description><category></category></item><item><title><![CDATA[MySQL 当记录不存在时insert，当记录存在时update]]></title><link>https://blog.youkuaiyun.com/suese/article/details/31438621</link><guid>https://blog.youkuaiyun.com/suese/article/details/31438621</guid><author>suese</author><pubDate>Mon, 16 Jun 2014 21:02:33 +0800</pubDate><description><![CDATA[MySQL 当记录不存在时insert，当记录存在时更新

网上基本有三种解决方法。

第一种：

示例一：insert多条记录

假设有一个主键为 client_id 的 clients 表，可以使用下面的语句：

INSERT INTO clients

(client_id, client_name, client_type)

SELECT supplier_i]]></description><category></category></item><item><title><![CDATA[Qt发布，无法找到qwindows.dll]]></title><link>https://blog.youkuaiyun.com/suese/article/details/30485465</link><guid>https://blog.youkuaiyun.com/suese/article/details/30485465</guid><author>suese</author><pubDate>Fri, 13 Jun 2014 14:36:53 +0800</pubDate><description><![CDATA[I’ve written about deploying a simple Qt app, but what about deploying a more complex, “real” Qt app. This means copying all the needed
 files: besides the main executable file there usually are some]]></description><category></category></item><item><title><![CDATA[QT：Qsocket长连接的实现（多线程服务器）]]></title><link>https://blog.youkuaiyun.com/suese/article/details/29933203</link><guid>https://blog.youkuaiyun.com/suese/article/details/29933203</guid><author>suese</author><pubDate>Tue, 10 Jun 2014 23:42:11 +0800</pubDate><description><![CDATA[废话少说：直接上代码
PS：为了减少代码量，这里忽略了链接出错时的错误处理]]></description><category></category></item><item><title><![CDATA[使用Qt打开大型文件的控件LazyTextEdit]]></title><link>https://blog.youkuaiyun.com/suese/article/details/26347881</link><guid>https://blog.youkuaiyun.com/suese/article/details/26347881</guid><author>suese</author><pubDate>Tue, 20 May 2014 10:41:30 +0800</pubDate><description><![CDATA[LazyTextEdit is a Qt based text editor that lazily loads data from disk when
necessary.

It tries to keep memory usage as low as possible and only stores chunks of data
that have been modified. Its AP]]></description><category></category></item><item><title><![CDATA[Windows 通过公钥访问Git Server]]></title><link>https://blog.youkuaiyun.com/suese/article/details/24443717</link><guid>https://blog.youkuaiyun.com/suese/article/details/24443717</guid><author>suese</author><pubDate>Fri, 25 Apr 2014 01:54:07 +0800</pubDate><description><![CDATA[1.请先安装Git bash和TortoiseGit程序。

2.用运行Git bash,在bash终端上运行

ssh-keygen.exe 

不要输入密码，

最后会告诉你生成了公钥和私钥文件，记住名称。

3.将公钥文件改名，根据文件内容的最后一个字符串，然后按照我的这篇文章里面的（5.加入新用户）方式加入到Git server中。

http://blog.csd]]></description><category></category></item><item><title><![CDATA[重装系统后重新手工注册Matlab控件到系统]]></title><link>https://blog.youkuaiyun.com/suese/article/details/24435967</link><guid>https://blog.youkuaiyun.com/suese/article/details/24435967</guid><author>suese</author><pubDate>Thu, 24 Apr 2014 21:03:08 +0800</pubDate><description><![CDATA[测试版本:

        Matlab 7.11.0.584

问题描述:

        这个版本的Matlab我安装在非系统盘,当我重新装了系统后,发现Matlab还可以正常使用.唯一的一个缺陷是其之前在系统控件库注册的信息已经没有了.由于混合编程的需要，需要重新人工对其进行注册。其注册方法如下：

在DOS窗口输入如下命令

cd matla路径\bin\win32]]></description><category></category></item><item><title><![CDATA[CVS 自动备份解决方案]]></title><link>https://blog.youkuaiyun.com/suese/article/details/23971519</link><guid>https://blog.youkuaiyun.com/suese/article/details/23971519</guid><author>suese</author><pubDate>Thu, 17 Apr 2014 23:25:02 +0800</pubDate><description><![CDATA[课题要求：

有两台以LINUX为环境的服务器都安装了CVS，一台是常用的称为 服务器A ， 另一台是备份用的称为 服务器B。

现在要求每天将服务器A上的CVS内容自动备份到服务器B的CVS上去，并且每个月产生一个版本。一旦服务器A 发生故障，可以立即使用服务器B上的CVS。

 

方案前期准备：

1，服务器A   服务器B 上已经安装了 两个一模一样的CVS， 包括希望]]></description><category></category></item><item><title><![CDATA[Qt调用dll中的功能函数]]></title><link>https://blog.youkuaiyun.com/suese/article/details/23661405</link><guid>https://blog.youkuaiyun.com/suese/article/details/23661405</guid><author>suese</author><pubDate>Mon, 14 Apr 2014 10:26:08 +0800</pubDate><description><![CDATA[声明： 事先我已经自己动手写了一个简单的dll文件(myDLL.dll),C版接口的。并且用我前两篇有关DLL文章里面的方法，从dll中导出了导入库(.lib)文件，dll中有两个函数，原型如下：

   void HelloWorld();     //函数内部调用Win32 API,功能是弹出一个helloworld提示框
   int add(int a,int b);
  //实现]]></description><category></category></item><item><title><![CDATA[在centos 下安装配置基于gitosis 的git 服务]]></title><link>https://blog.youkuaiyun.com/suese/article/details/21342839</link><guid>https://blog.youkuaiyun.com/suese/article/details/21342839</guid><author>suese</author><pubDate>Sun, 16 Mar 2014 22:33:17 +0800</pubDate><description><![CDATA[前言　这里我用的系统是centos 6.2,

在服务器上的准备工作(服务器IP为10.0.2.8 )：
1、安装 openssh服务器与客户端工具




[plain] view
 plaincopy






$ sudo yum install openssh-server openssh-client  






2、创建个人公钥和私钥]]></description><category></category></item><item><title><![CDATA[Ubuntu 11.10 server 安装Git 服务器]]></title><link>https://blog.youkuaiyun.com/suese/article/details/21339565</link><guid>https://blog.youkuaiyun.com/suese/article/details/21339565</guid><author>suese</author><pubDate>Sun, 16 Mar 2014 21:31:54 +0800</pubDate><description><![CDATA[因为后面要采用Git代替Subversion,花了点时间配置了Git服务端和客户端，像以前一样，仍然基于最新的Ubuntu11.10 server/desktop系统。

感谢这几篇文章的作者：

http://www.hackido.com/2010/01/installing-git-on-server-ubuntu-or.html


同时参考一下：

http://www]]></description><category></category></item><item><title><![CDATA[Windows 通过公钥访问Git Server]]></title><link>https://blog.youkuaiyun.com/suese/article/details/21339555</link><guid>https://blog.youkuaiyun.com/suese/article/details/21339555</guid><author>suese</author><pubDate>Sun, 16 Mar 2014 21:31:26 +0800</pubDate><description><![CDATA[Reviewboard的windows客户端, Gerrit的windows客户端, Jenkins的Windows server端都需要这种方式。

1.请先安装Git bash和TortoiseGit程序。

2.先运行Git bash,在bash终端上运行

ssh-keygen.exe 

不要输入密码，

最后会告诉你生成了公钥和私钥文件，记住名称。

3.将公钥]]></description><category></category></item><item><title><![CDATA[Installing VMware ESXi 5.5 on the Gigabyte Brix]]></title><link>https://blog.youkuaiyun.com/suese/article/details/21294469</link><guid>https://blog.youkuaiyun.com/suese/article/details/21294469</guid><author>suese</author><pubDate>Sat, 15 Mar 2014 19:05:52 +0800</pubDate><description><![CDATA[Scope

This article covers the steps required to install VMware ESXi 5.5 on the Gigabyte Brix, and a few other systems that use non-supported NICs that worked in ESXi 5.1.



Background

The d]]></description><category></category></item><item><title><![CDATA[libpomelo+cocos2d-x开发环境筹建（windows版）]]></title><link>https://blog.youkuaiyun.com/suese/article/details/20627989</link><guid>https://blog.youkuaiyun.com/suese/article/details/20627989</guid><author>suese</author><pubDate>Thu, 06 Mar 2014 15:00:53 +0800</pubDate><description><![CDATA[libpomelo+cocos2d-x开发环境搭建（windows版）

我知道你们需要这篇文档。。。

之后会再提供android版




1.下载 cocos2d-2.1rc0-x-2.1.2 版本（目前最新版）并解压到工作目录。




2.用python(我用的2.7.3)运行 cocos2droot/tools/project-creater 目录下的 cr]]></description><category></category></item><item><title><![CDATA[Using GCC(minGW) as Matlab's MEX compiler]]></title><link>https://blog.youkuaiyun.com/suese/article/details/20326513</link><guid>https://blog.youkuaiyun.com/suese/article/details/20326513</guid><author>suese</author><pubDate>Mon, 03 Mar 2014 00:48:08 +0800</pubDate><description><![CDATA[http://stackoverflow.com/questions/8552580/using-gccmingw-as-matlabs-mex-compiler




13
down vote
favorite
13
I've been given a project to run on matlab 2011a. As there are several .c files ]]></description><category></category></item></channel></rss>