<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[mz5111089的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/mz5111089</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; mz5111089]]></copyright><item><title><![CDATA[std::thread 的并发测试]]></title><link>https://blog.youkuaiyun.com/mz5111089/article/details/112510723</link><guid>https://blog.youkuaiyun.com/mz5111089/article/details/112510723</guid><author>mz5111089</author><pubDate>Tue, 12 Jan 2021 11:41:06 +0800</pubDate><description><![CDATA[std::thread 的并发测试，测试两方面的性能：
1 并发同步锁的最优位置

2 并发最优线程数量

直接上代码：



void Ticket::Sell(const int tickets)
{
	this-&gt;tickes = tickets;

	clock_t start, end;
	start = clock();

	vector&lt;std::thread&gt; threadLst;
	for (int i = 0; i &lt; 36; ++i)
	{
		threadLs]]></description><category></category></item><item><title><![CDATA[QMap 之 swap 特性]]></title><link>https://blog.youkuaiyun.com/mz5111089/article/details/100150644</link><guid>https://blog.youkuaiyun.com/mz5111089/article/details/100150644</guid><author>mz5111089</author><pubDate>Fri, 30 Aug 2019 09:53:04 +0800</pubDate><description><![CDATA[QMap&lt;int, int&gt; mp1;
    mp1.insert(1,2);
    mp1.insert(2,3);

    QMap&lt;int, int&gt; mp2;
    mp2.swap(mp1);

    qDebug()&lt;&lt;mp1.size();

    mp2.clear();
    qDebug()&lt;&lt;mp1.si...]]></description><category></category></item><item><title><![CDATA[Android抽奖实现]]></title><link>https://blog.youkuaiyun.com/mz5111089/article/details/83113521</link><guid>https://blog.youkuaiyun.com/mz5111089/article/details/83113521</guid><author>mz5111089</author><pubDate>Wed, 17 Oct 2018 16:57:27 +0800</pubDate><description><![CDATA[第一章：实现简易抽奖

1.1 实现步骤


1.2 程序示例

第一步：
TextView lotteryNumberTv = findViewById(R.id.lotteryView);

第二步：
Random random = new Random();

第三步：
int n = random.nextInt(100);

第四步：     
lotteryNumberT...]]></description><category></category></item><item><title><![CDATA[Android 实践一 hello world]]></title><link>https://blog.youkuaiyun.com/mz5111089/article/details/81905433</link><guid>https://blog.youkuaiyun.com/mz5111089/article/details/81905433</guid><author>mz5111089</author><pubDate>Tue, 21 Aug 2018 12:15:10 +0800</pubDate><description><![CDATA[ 



 

activity_main.xml ：


&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;

&amp;lt;android.support.constraint.ConstraintLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    xmlns:app=&quot;ht...]]></description><category></category></item><item><title><![CDATA[初识Android第一坑，预览不可见]]></title><link>https://blog.youkuaiyun.com/mz5111089/article/details/81875618</link><guid>https://blog.youkuaiyun.com/mz5111089/article/details/81875618</guid><author>mz5111089</author><pubDate>Mon, 20 Aug 2018 18:18:45 +0800</pubDate><description><![CDATA[
&amp;lt;resources&amp;gt;

    &amp;lt;!-- Base application theme. --&amp;gt;
    &amp;lt;style name=&quot;AppTheme&quot; parent=&quot;Base.Theme.AppCompat.Light.DarkActionBar&quot;&amp;gt;
        &amp;lt;!-- Customize your theme here. --&amp;gt;
   ...]]></description><category></category></item><item><title><![CDATA[vs 汇编输出到控制台]]></title><link>https://blog.youkuaiyun.com/mz5111089/article/details/81488372</link><guid>https://blog.youkuaiyun.com/mz5111089/article/details/81488372</guid><author>mz5111089</author><pubDate>Tue, 07 Aug 2018 20:55:33 +0800</pubDate><description><![CDATA[ 代码写到一定量，了解下汇编先


.386
.model flat, stdcall
option casemap :none

includelib kernel32.lib
includelib masm32.lib

ExitProcess PROTO STDCALL:DWORD
StdOut		PROTO STDCALL:DWORD

.data
HelloWorld db &quot;Hello...]]></description><category></category></item><item><title><![CDATA[KMeans算法实现]]></title><link>https://blog.youkuaiyun.com/mz5111089/article/details/80531924</link><guid>https://blog.youkuaiyun.com/mz5111089/article/details/80531924</guid><author>mz5111089</author><pubDate>Thu, 31 May 2018 23:55:08 +0800</pubDate><description><![CDATA[闲得，自己琢磨了KMeans算法，记录下。原理网络一大把，不再累述# -*- coding: utf-8 -*-
&quot;&quot;&quot;
Created on Wed May 16 23:02:51 2018

@author: mz
&quot;&quot;&quot;
import math
import random
from sklearn import datasets
import numpy  as np
import copy...]]></description><category></category></item><item><title><![CDATA[Python 解析器模式]]></title><link>https://blog.youkuaiyun.com/mz5111089/article/details/79748097</link><guid>https://blog.youkuaiyun.com/mz5111089/article/details/79748097</guid><author>mz5111089</author><pubDate>Thu, 29 Mar 2018 19:58:14 +0800</pubDate><description><![CDATA[# -*- coding: utf-8 -*-
&quot;&quot;&quot;
Created on Thu Mar 29 19:26:13 2018

@author: mz
&quot;&quot;&quot;

class Context(object):
    def SetContect(self, rhs):
        self.context = rhs
    def GetContext(self):
        ret...]]></description><category></category></item><item><title><![CDATA[Python 访问者模式]]></title><link>https://blog.youkuaiyun.com/mz5111089/article/details/79747671</link><guid>https://blog.youkuaiyun.com/mz5111089/article/details/79747671</guid><author>mz5111089</author><pubDate>Thu, 29 Mar 2018 19:25:27 +0800</pubDate><description><![CDATA[# -*- coding: utf-8 -*-
&quot;&quot;&quot;
Created on Thu Mar 29 16:52:56 2018

@author: mz
&quot;&quot;&quot;

class Aggregate(object):
    def __init__(self):
        self._elmlst = []
    
    def Attach(self, elm):
        sel...]]></description><category></category></item><item><title><![CDATA[Python 迭代模式]]></title><link>https://blog.youkuaiyun.com/mz5111089/article/details/79743519</link><guid>https://blog.youkuaiyun.com/mz5111089/article/details/79743519</guid><author>mz5111089</author><pubDate>Thu, 29 Mar 2018 15:28:31 +0800</pubDate><description><![CDATA[# -*- coding: utf-8 -*-
&quot;&quot;&quot;
Created on Thu Mar 29 11:43:05 2018

@author: mz
&quot;&quot;&quot;

class Iterator(object):
    def Next(self):
        pass
    def HasNext(self):
        pass
    def First(self):
    ...]]></description><category></category></item><item><title><![CDATA[Python 建造者模式]]></title><link>https://blog.youkuaiyun.com/mz5111089/article/details/79739425</link><guid>https://blog.youkuaiyun.com/mz5111089/article/details/79739425</guid><author>mz5111089</author><pubDate>Thu, 29 Mar 2018 11:00:20 +0800</pubDate><description><![CDATA[# -*- coding: utf-8 -*-
&quot;&quot;&quot;
Created on Thu Mar 29 10:19:38 2018

@author: mz
&quot;&quot;&quot;

class Director(object):
    def Build(self, builder):        
        builder.BuildFloor()
        builder.BuildWindow...]]></description><category></category></item><item><title><![CDATA[Python 享元模式]]></title><link>https://blog.youkuaiyun.com/mz5111089/article/details/79733858</link><guid>https://blog.youkuaiyun.com/mz5111089/article/details/79733858</guid><author>mz5111089</author><pubDate>Wed, 28 Mar 2018 20:55:32 +0800</pubDate><description><![CDATA[# -*- coding: utf-8 -*-
&quot;&quot;&quot;
Created on Wed Mar 28 20:41:17 2018

@author: mz
&quot;&quot;&quot;

class Share(object):
    def __init__(self):
        self.d = {}
    
    def Attach(self, key, value):
        if key...]]></description><category></category></item><item><title><![CDATA[Python 原型模式]]></title><link>https://blog.youkuaiyun.com/mz5111089/article/details/79733431</link><guid>https://blog.youkuaiyun.com/mz5111089/article/details/79733431</guid><author>mz5111089</author><pubDate>Wed, 28 Mar 2018 20:33:21 +0800</pubDate><description><![CDATA[# -*- coding: utf-8 -*-
&quot;&quot;&quot;
Created on Wed Mar 28 19:41:57 2018

@author: mz
&quot;&quot;&quot;

from copy import copy, deepcopy

class Prototype(object):
    def Clone(self):
        pass
    
    def DeepClone(sel...]]></description><category></category></item><item><title><![CDATA[Python 观察者模式]]></title><link>https://blog.youkuaiyun.com/mz5111089/article/details/79732710</link><guid>https://blog.youkuaiyun.com/mz5111089/article/details/79732710</guid><author>mz5111089</author><pubDate>Wed, 28 Mar 2018 19:40:11 +0800</pubDate><description><![CDATA[# -*- coding: utf-8 -*-
&quot;&quot;&quot;
Created on Wed Mar 28 18:50:47 2018

@author: mz
&quot;&quot;&quot;

#observer
class Boss(object):
    def __init__(self):
        self.obj = [];
    
    def Attach(self, employee):
    ...]]></description><category></category></item><item><title><![CDATA[Python 模板方法]]></title><link>https://blog.youkuaiyun.com/mz5111089/article/details/79716126</link><guid>https://blog.youkuaiyun.com/mz5111089/article/details/79716126</guid><author>mz5111089</author><pubDate>Tue, 27 Mar 2018 17:14:49 +0800</pubDate><description><![CDATA[# -*- coding: utf-8 -*-
&quot;&quot;&quot;
Created on Tue Mar 27 17:08:14 2018

@author: mz
&quot;&quot;&quot;

class Template(object):
    def Excute(self):
        self.ReadyRead()
        self.ReadyWrite()
        
    def Read...]]></description><category></category></item><item><title><![CDATA[Python 外观模式]]></title><link>https://blog.youkuaiyun.com/mz5111089/article/details/79715961</link><guid>https://blog.youkuaiyun.com/mz5111089/article/details/79715961</guid><author>mz5111089</author><pubDate>Tue, 27 Mar 2018 17:06:48 +0800</pubDate><description><![CDATA[# -*- coding: utf-8 -*-
&quot;&quot;&quot;
Created on Tue Mar 27 16:56:43 2018

@author: mz
&quot;&quot;&quot;

class Facade(object):
    def TradeWar(self):
        a = ASubject()
        b = BSubject()
        c = CSubject()
   ...]]></description><category></category></item><item><title><![CDATA[Python 单例模式]]></title><link>https://blog.youkuaiyun.com/mz5111089/article/details/79710977</link><guid>https://blog.youkuaiyun.com/mz5111089/article/details/79710977</guid><author>mz5111089</author><pubDate>Tue, 27 Mar 2018 11:54:44 +0800</pubDate><description><![CDATA[# -*- coding: utf-8 -*-
&quot;&quot;&quot;
Created on Mon Mar 26 19:40:24 2018

@author: mz
&quot;&quot;&quot;
import threading

class Singleton(object):
    _instance_lock = threading.Lock()

    def __init__(self):
        pass
...]]></description><category></category></item><item><title><![CDATA[Python 代理模式]]></title><link>https://blog.youkuaiyun.com/mz5111089/article/details/79702749</link><guid>https://blog.youkuaiyun.com/mz5111089/article/details/79702749</guid><author>mz5111089</author><pubDate>Mon, 26 Mar 2018 19:34:49 +0800</pubDate><description><![CDATA[# -*- coding: utf-8 -*-
&quot;&quot;&quot;
Created on Mon Mar 26 19:17:20 2018

@author: mz
&quot;&quot;&quot;

class Person(object):
    def ShowLove(self):
        pass

class Girl(Person):
    def ShowLove(self):
        pass

...]]></description><category></category></item><item><title><![CDATA[Python 命令模式]]></title><link>https://blog.youkuaiyun.com/mz5111089/article/details/79702212</link><guid>https://blog.youkuaiyun.com/mz5111089/article/details/79702212</guid><author>mz5111089</author><pubDate>Mon, 26 Mar 2018 18:51:23 +0800</pubDate><description><![CDATA[# -*- coding: utf-8 -*-
&quot;&quot;&quot;
Created on Mon Mar 26 17:17:02 2018

@author: mz
&quot;&quot;&quot;

class ICommand(object):
    def __init__(self, rhs):
        self.rcv = rhs
    
    def Excute(self):
        pass

c...]]></description><category></category></item><item><title><![CDATA[Python 备忘录模式]]></title><link>https://blog.youkuaiyun.com/mz5111089/article/details/79597370</link><guid>https://blog.youkuaiyun.com/mz5111089/article/details/79597370</guid><author>mz5111089</author><pubDate>Sun, 18 Mar 2018 00:49:07 +0800</pubDate><description><![CDATA[Created on Sun Mar 18 00:30:51 2018

@author: mz
&quot;&quot;&quot;

class Original(object):
    def save(self, state):
        print(&quot;save status: %s&quot; %(state))
        self.__status = state
        
    def get(se...]]></description><category></category></item></channel></rss>