-
最新易语言发送WPE封包实例
利用易语言做成发送WPE截取的封包源码,之前找了好长时间,使用的是模块化操作
- 2020-12-01下载
- 积分:1
-
loveyou系列源码(8套表白源码)
程序员表白程序,开放源码,不断更新(第三篇:第二弹),这是loveyue系列的源码,详情请参照博客:http://blog.csdn.net/wuxia2001/article/details/45743641
- 2020-02-15下载
- 积分:1
-
Think DSP python.pdf
用python学习数字信号处理 digital signal processing
- 2020-06-08下载
- 积分:1
-
算法的陷阱:超级平台、算法垄断与场景欺骗.mobi
我们已生活在大数据时代,享受着信息技术飞速发展所带来的福利。 但与此同时,有多少我们司空见惯、习以为常的现象是否合理? 我们在获取便利的过程中让渡了多少传统上被珍视的社会价值?两位法学教授对大数据时代表面的繁荣下隐藏的危害进行了比较全面的梳理。作为竞争法学者,作者对超级平台(Google、苹果、Facebook 等,当然可以类推至中国的类似平台)的垄断性优势与其给竞争市场带来的破坏力表达了深切担忧。 在互联网生态系统中,企业综合应用数据追踪、分析、挖掘技术,普及精准化营销、个性化定价,可以实现完美的行为歧视。 公众成为“算法”标记、组织的对象,成为各种软硬件监控的目标,丧失了人的主体性。“要么接受,要么离开”的规则使处于天然弱势地位的公众难以具备可选择性,成为游戏规则的被动接受者。作者在书中多次提到《楚门的世界》这部经典电影。 在当前这个被操纵、控制的网络空间中,我们的处境和电影主人公楚门又有多少差别? 也许所谓的服务效率改善需要以牺牲用户隐私、奉送安宁生活为代价,但这里的边界应该在什么位置? 作者特别强调以人工智能技术为基础的各种“虚拟助手”在帮我们做决策的同时,也限制了我们接触外部选择的机会。 更让人感到沮丧的是,作者指出作为既得利益者的超级平台否认所存在的弊端,掩盖大数据隐患的事实,凭借强大力量以各种方式打压竞争对手,驱逐隐私保护软件,使公众需要承担更多的时间、精力、金钱代价。虽然困难重重,作者也尝试给出药方,其中包含了“教育民众”的内容。 让公众理解超级平台和垄断算法的运作机制,保持清醒的认知,为推动变革的到来贡献力量。 长期以来,图书馆职业一直是“信息公平”的坚定捍卫者。 在新的环境下,能否在实现“算法公平”中继续发挥自己的独特价值? 这是值得图书馆界人士思考的问题。
- 2020-12-11下载
- 积分:1
-
脉冲多普勒雷达
动目标检测matlab代码,可以直接使用。
- 2021-05-06下载
- 积分:1
-
内存乒乓缓存机制和消息分发机制的C代码实现
用C代码实现乒乓内存缓冲机制,具体实用价值,帮助您提高内存响应速度与及时数据的处理。unsigned long writeunsigned long greadunsigned long overflowST TWTMSG QUEUE:/ Helper macros for accessing Msg queues. *#define tWt QUEUE EMPty(a)(((g->write==(q)->gread)? 1: 0)#define twt_ QUeUe full(a)(((((q)->qwrite +1% TIMEWEIGHT TASKQUEUE SIZED)==(q)->gread)?1: 0)米 generate a Msg entity*正常返回消息体的指针,异常返回NULLT TWTMSG* generateMsg(tT-TWTMSG* pmSg=nULL,if(NULL =-(ptMsg malloc(sizeof(T TWTMSG)))return NULL;memset(ptMsg, 0, sizeof(T TWTMSG)return pmSg;destroy a Msgvoid destroy Msg(t TWTMSG ptMsgif(NULL ptMsg->pfDestroyMsg)pt Msg->pfDestroy Msg(ptMsg->pvMsg)if (NULL != pt Msg)free(pmSgfree a Msg Queuevoid freeTWTMsg Que(T TWTMSG QUEUE* ptMsgQif(NULL =ptMsg Afree(ptMsg Q);Init a Msg QT TWTMSG QUEUE* initTWTMsg QueoT TWTMSG QUEUE pmSg Q= NULlif (NULL ==(ptMsgQ malloc(sizeof(T_ TWTMSG QUeue)goto ErrRetmemset(ptMsgQ, 0, sizeof(T TWTMSG QUEUE))return pmSg Q;Errretprintf( initTWTMsg Que Fail! ")freeTWTMsgQue(ptMsg Q)return nullPop a pvMsg packet from a msg packet queues param g is the packet queue from which to pop the pbuf@return pointer to pvMsg packet if available, NULl otherwiseT TWTMSG* TWTMsg Get(T_ TWTMSG QUEUE aT TWTMSG*//*加锁if(TWT_ QUEUE_ EMPTY(a))iReturn a NUll pointer if the queue is emptypmSg=NULL;else is The queue is not empty so return the next frame from itand adjust the read pointer accordinglypmSg=g->pvMsglq >greadg->gread =((q->gread +1)% TIMEWEIGHT_TASKQUEUE_ SIZE)/*解锁return(pmSg);Push a pmSg packet onto a pvMsg packet queue@param p is the pmsg to push onto the packet queue@param g is the packet queue.W @return 0 if successful, -1 if q is fullnt TWTMsg Send(T tWTMSg*p, T TWTMSG QUEUE *qint ret/if(!TWT_ QUEUE FULL(al)iThe queue isn t full so we add the new frame at the currentw write position and move the write pointer.g->pvMsgla->write]=pg- >write =((q->qwrite+1)% TIMEWEIGHT TASKQUEUE SIZE;ret =oThe stack is full so we are throwing away this value. Keep trackof the number of times this happensg->overflow++ret =-1://*解锁return(ret)**米**米来米***来米*半米*米*半米*米求***半*米米求半**米求半**半求半和*米*//消息分发机制//*算法是//*正常返回0,出错返回-1水米米******水*米*水**米*半*水米米冰半**水水*水米米半米冰水*米水水*水*米水水extern int RecToFile MsgProc(T_ MSG_ REC2 FILE* ptMsg);int DispatchMsg(T TWTMSG *ptMsgitif(NULl = ptMsg goto ErrRet/*dispatch msg*/switch(ptMsg->en Msg Type)case TWT PINgPoNgBuff recRecTo File Msg Procl(TMSG_REC2FE) (pmSg->pMsg);/*处理消息*/destroy Msg( pmSg;/*消毁消息breakdefault.printf("Dispatch Msg Msgtype Error! n")break.return 0ErrRetprintf("Dispatch Msg Fail! ";return-1./*buff size*/#defineP| NGPONG_ BUFF BSIZE0X20000//10*1024*1024/*10M*/*ping pong buff*///chargacPINGBUFF[PINGPONG BUFF BSIZE]; /* Ping Buff*///chargacPONGBUFF[PINGPONG_ BUFF BSIZE] *Pong Buff*/水米米*********米*水**米*半*水米米水**冰水*水米米半半水半米冰水*米水水*水*米米//*释放 ping pong buff/必然成功//*无返回木***木*水****本**水*水水*水****本水**水水****水水***本***米*水void Destroy Ping Pong Butt(T PINGPONGBUFF USE DES ptPing Pong Butt)nLoopif (NULL = pt Ping pong buffreturnfor (nLoop=0; nLooptIng BuffUse[nLoop]. pcHeadAddr)free(ptPing Pong ->t Ping BuffUse[nLoop]. pcHeadAddr)free(pt Ping pong Buff)/初始化 ping pong buff返回 pign pong buff的描述指针//*正常返回0,出错返回-1水水水水水水水水水木水木水水水水水木水木水水水水水水水水本水水水水水水水水水本水水水水水水水水水水水水水T PINGPONGBUFF USE DES InitPing Pong Buff(unsigned int n BuffSizeT PINGPONGBUFF USE DES* ptBuffDes=NULLintnLoop/*获取buf描述*if NULL==(ptBuffDes=malloc(sizeof(T PINGPONGBUFF USE DES))))goto ErrRetmemset(pt BuffDes, 0, sizeof(T_PINGPONGBUFF USE_ DES));/*分别初始化ping和pong*/for(nLoop=0; nLooptIng BuffUsenLoop pcHeadAddr =malloc n BuffSize))goto Err Ret;ptBuffDes->tIng BuffUselnLoop] nBuffSize nBuffsizeptBuffDes->tPing BuffUse[nLoop]. oFfsetptBuffDes->tPing BuffUsenLoop) eUseStatus-=BUFF WRITEABLE;pt BuffDes->eCurUseIDBUFF PINGreturn pt BuffDesErrretprintf("lnitPing Pong Buff Fail!");DestroyIng Pong Buff(pt BuffDes)turn null平**米**米*米***来米米*米*米*半米*米米米来*半米平**米米求*来*半求半来*米求*和*米*/*Reset ping pong buff//*正常返回0,出错返回-1米米米米水冰米*米米水**米米冰*米水米米米米水米水*水米米来米米x米来米米水冰来来宋来水米来米来冰#define ResetBuffUse(ptBuffuse)pt BuffUse->oFfset0pt BuffUse->eUseStatus BUFF WRITEABLEgenerate a file rec msg*正常返回消息体的指针,异常返回NULLT_MSG_REC2lGK SenFRMSB(T_BUFF_USE_DES *ptBuffUse, REC_FILE_DESLIST *ptFileListRT MSG REC2FILE KE* ptRFMsg= NULL;if(NULL ==(ptRFMsg malloc(sizeof(T_ MSG REC2 FILE)return nUllptRFMsg- >pt BuffUse pt BuffUseptRFMsg->pt Filelist ptFilelist;return ptRFMsg
- 2020-12-03下载
- 积分:1
-
机器视觉单目测量
机器视觉中利用单幅图像进行求解单应性矩阵从而测量图像中长度,基于MATLAB编写
- 2020-12-10下载
- 积分:1
-
David Silver强化学习课程课件
该资源是David Silver的强化学习课程所对应的ppt。该资源是David Silver的强化学习课程所对应的ppt。该资源是David Silver的强化学习课程所对应的ppt。
- 2020-12-11下载
- 积分:1
-
jstl-1.2和standard-1.1.2.jar.rar
jstl-1.2和standard-1.1.2.jar.rarjstl-1.2和standard-1.1.2.jar.rarjstl-1.2和standard-1.1.2.jar.rarjstl-1.2和standard-1.1.2.jar.rar
- 2020-12-05下载
- 积分:1
-
svpwm的C Mex S函数源程序.rar
【实例简介】压缩包内附:svpwm的C Mex S函数源程序,以及一份相应的word说明文档
C Mex S函数在仿真过程中不需要反复调用matlab解释器,其运行速度和效率相对于M语言S函数有很大的优势,同时使用C语言编程灵活性也更高。
- 2021-12-02 00:35:17下载
- 积分:1