- 博客(22)
- 资源 (2)
- 收藏
- 关注
原创 AU3-设置IP和DNS
#include #include #include #include #include #include Opt("GUIOnEventMode", 1)$G_bCreate = False;$G_Config = @WorkingDir & "\config.ini"$G_Name= ""$hDlg = GUICreate("修改IP",481,23
2011-12-23 15:00:46 2924 11
原创 AU3-进程名获取窗口名
#Include Dim $arr = ProcessList("PersonalClient.exe")$PID = 0If $arr[0][0] > 0 Then $PID = $arr[1][1]Else ExitEndIfDim $arr1 = WinList()For $i = 1 To $arr1[0][0] $hwnd = $arr1[$i]
2011-12-21 09:42:04 1609
原创 AU3-常用函数1
;1点击按钮ControlClick("窗口名称","","[CLASS:Button; INSTANCE:1]","left");2获取edit文本 设置文本ControlSetText("窗口名称","","[CLASS:Edit; INSTANCE:1]","文本",1)ControlGetText();3.获取状态栏中的文本AutoItSetOption("WinT
2011-12-21 09:36:55 1148
原创 AU3 - 进程名获取窗口标题
Dim $arr = ProcessList("aadfa.exe")$PID = 0If $arr[0][0] > 0 Then $PID = $arr[1][1]Else ExitEndIfDim $arr1 = WinList()For $i = 1 To $arr1[0][0] $hwnd = $arr1[$i][1] If _WinAPI
2011-12-20 14:24:01 3032
转载 常用SQL(2)
/**修改 系统统计参数**/ALTER system SET statistics_level = ALL;/**查看内存SGA PGA**/show parameter target; SELECT * FROM v$sgainfo;show sga;/**内存表**/--设置内存表ALTER TABLE t_team storage(buffer_pool
2011-12-20 08:39:02 348
原创 俄罗斯方块
#pragma once/******************************************************************************** name : * description: 点,代表一个小方块* input : * output : * return : void* rema
2011-12-19 17:53:33 329 4
原创 多写多读-线程安全队列4
//放入数据的过程template bool TMultiRWQueue::myPut(Element& data){ if (!m_lockPut.Lock()) { return false; } //拷贝元素数据到空闲节点 *m_Put = data; //空闲节点指向下一个位置 m_Put++; if (m_Put >= m_Tail
2011-12-13 15:51:59 330
原创 多写多读-线程安全队列3
//执着放入一个数据(没有空间就一直等待)template bool TMultiRWQueue::put(Element& data){ if (!m_bInit) { return false; } //获得空闲信号量通知 if (!m_semaPut.Wait()) { return false; } //放入元素 myPut
2011-12-13 15:50:44 488
原创 多写多读-线程安全队列2
//初始化,创建对列template TMultiRWQueue::TMultiRWQueue(){ m_bInit =FALSE; m_Head = NULL ; //队列起点 m_Tail = NULL; //对列终点 m_Put = NULL; //下一个写入位置 m_Get = NULL; //下一个读取位置
2011-12-13 15:47:15 455
原创 多写多读-线程安全队列1
#pragma once#include "TSemaphore.h"#include "TLock.h"//支持多读多写#ifndef TMULTIRWQUEUE_H#define TMULTIRWQUEUE_Htemplate class TMultiRWQueue{public: typedef T Element; private: Ele
2011-12-13 15:39:50 515
原创 字符串切分
#ifndef WORDDATA_DEF#define WORDDATA_DEF/******************************************************************************** name : WORDDATA* description: 本类主要用以切分字符串。例如"A=B" 用'='切分为 "A"和"B
2011-12-13 14:49:33 448 2
原创 事件锁-Linux
#ifndef WAIT_LOCK_DEF#define WAIT_LOCK_DEF/******************************************************************************** name : WORDDATA* description: 本类主要用以加锁和解锁* remark : Crea
2011-12-13 14:37:02 704
原创 线程同步-信号量
3.信号量 (Semaphore) A synchronization object that allows a limited number of threads in one or more processes to access a resource. Semaphores are useful in controlling access to a shared resource that
2011-12-13 14:31:54 338
原创 线程同步-互斥量
2.互斥量(Mutex) A synchronization object that allows one thread mutually exclusive access to a resource. Mutexes are useful when only one thread at a timecan be allowed to modify data or some other
2011-12-13 14:23:33 380
原创 线程同步-临界区
1.临界区(Critical Section) A synchronization object that allows one thread at a time to access a resource or section of code. Critical sections are useful when only onethread at a time can be allow
2011-12-13 14:22:49 418
原创 临界区锁
#pragma once#include class TCriticalSection{private: CRITICAL_SECTION m_critical; TCriticalSection() { InitializeCriticalSection(&m_critical); }; ~TCriticalSection() { De
2011-12-13 14:21:03 383
原创 互斥锁
#pragma once#ifdef _WIN32#include typedef DWORD TSemWaitTimeout;class TMutexLock{private : HANDLE m_mutex; public: TMutexLock() { m_mutex = CreateMutex(NULL, false, NULL); }
2011-12-12 17:33:42 668
原创 信号量封装类(Linux)
#else#include #include typedef int TSemWaitTimeout;class TSemaphore {private: sem_t m_sem;public: TSemaphore() { m_sem = NULL; }; ~TSemaphore() { if(NULL != m_sem)
2011-12-12 17:17:38 708
原创 信号量封装类(windows)
#pragma once/******************************************************************************** name : 信号量封装类* description: * input : * output : * return : void* remark
2011-12-12 17:16:24 447
原创 关于查找排序的一点总结
最近在项目中,写协议栈的时候,需要引入消息重发机制,所以使用了资源池+队列的方式管理需要重发的消息,消息重发按照 每隔1s 2s 4s....的方式进行,每次取队列的第一个判断需要重发的时间,并等待一段时间(不超过 最短重发时间,因为可能会有新的消息加入队列),重发完毕后,将消息的下次重发时间 刷新并插入队列中(采用 折半查找的方式),经测试,当消息数量在8W条时,插入一条数据 大约需要50us,
2011-12-08 09:04:26 379
原创 Linux常用命令
1.查看 线程CPU使用ps H -eo user,pid,ppid,tid,time,%cpu,cmd --sort=%cpu 2.抓包(root用户) 先执行ifconfig 查看网卡tcpdump -i eth1 -s 0 -w 1.cap 3.查看硬盘信息df -h4.查看当前文件夹信息du -sh * 5.查看任务管理器vmstat 1
2011-12-08 08:51:02 251
原创 蒙地卡罗法求PI
解法蒙地卡罗的解法适用于与面积有关的题目,例如求PI值或椭圆面积,这边介绍如何求PI值;假设有一个圆半径为1,所以圆面积就为PI,而包括此四分之一圆的正方形面积就为1,如下图所示:如果随意的在正方形中投射飞标(点)好了,则这些飞标(点)有些会落于四分之一圆内,假设所投射的飞标(点)有n点,在圆内的飞标(点)有c点,则依比例来算,就会得到上图中最后的公式。至于如何判断所产生的
2011-12-01 10:12:51 1106
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人