草庐IT

Python实现获得所有拼音为某个拼音的所有汉字

好久没有写博客了,这几年的开发让我感受良多,同时我也感觉到了我自己成长的还不够。所以,以后这里将会有我个人所有的项目经验总结,以及项目中使用到的一些方便的小工具也会写出来。目录前言一、获取所有拼音为某个拼音的汉字。二、拿到所有项目中的代码,并拷贝在同一份TXT文件当中三、将连续的字符串改成一个字单独一行总结前言随着项目的开发,项目上线审核的时候,最麻烦的一项:就是屏蔽词的审核,在这里我建议大家,如果项目中有修改昵称或者屏蔽非法文字的需求的话,一定要弄一个屏蔽词库,最好放在客户端。这个屏蔽词库里面要全部小写,然后玩家在修改昵称的时候,把大写转成小写。然后再进行屏蔽词对比。有时候,审核人员会有各种

lua(tolua)与C#交互以及泄漏的整理与总结

前言lua与C#交互通信原理lua调用C#调用无返回值函数(lua访问image的SetNativeSize)调用返回C#对象的函数(lua访问image的mainTexture)参考一个调用场景C#调用lua通过Require\Dofile调用lua以及通过DoString执行DoString通过lua虚拟机对象获取对应的对象实例完成调用Tolua中泄漏1.table作为key。2.C#持有lua对象使用完毕不执行释放接口。简单了解一下lua的GC总结前言最近在看lua泄漏的问题,接着就暴露出自己的一些问题,对于lua的认识更多的是停留在语法使用上,而对于lua如何产生泄漏,如何检查,如何优

lua(tolua)与C#交互以及泄漏的整理与总结

前言lua与C#交互通信原理lua调用C#调用无返回值函数(lua访问image的SetNativeSize)调用返回C#对象的函数(lua访问image的mainTexture)参考一个调用场景C#调用lua通过Require\Dofile调用lua以及通过DoString执行DoString通过lua虚拟机对象获取对应的对象实例完成调用Tolua中泄漏1.table作为key。2.C#持有lua对象使用完毕不执行释放接口。简单了解一下lua的GC总结前言最近在看lua泄漏的问题,接着就暴露出自己的一些问题,对于lua的认识更多的是停留在语法使用上,而对于lua如何产生泄漏,如何检查,如何优

Wireshark解析器(Dissector)插件-Lua

现有问题如果直接使用Wireshark查看常见诸如Http等协议报文,并不会有任何不便,但是如果查看私有协议报文,无法区分哪些是TCP协议相关报文,哪些是含有消息体的私有协议报文,也只能看到一串Byte和对应ASCII编码的Data值,无法知道数据中的各个字节对应哪个字段代表什么含义,更不能根据这些对应字段值进行过滤什么是解析器(Dissector)解析器(Dissector)是Wireshark中的概念,用于解析协议,将报文中对应的Bytes转为相应的字段值可以简单理解为Wireshark中的解码器。它不止能解析将相应位置的Bytes转为对应字段,还能将解析出来的字段用于报文过滤,还能自定义

Wireshark解析器(Dissector)插件-Lua

现有问题如果直接使用Wireshark查看常见诸如Http等协议报文,并不会有任何不便,但是如果查看私有协议报文,无法区分哪些是TCP协议相关报文,哪些是含有消息体的私有协议报文,也只能看到一串Byte和对应ASCII编码的Data值,无法知道数据中的各个字节对应哪个字段代表什么含义,更不能根据这些对应字段值进行过滤什么是解析器(Dissector)解析器(Dissector)是Wireshark中的概念,用于解析协议,将报文中对应的Bytes转为相应的字段值可以简单理解为Wireshark中的解码器。它不止能解析将相应位置的Bytes转为对应字段,还能将解析出来的字段用于报文过滤,还能自定义

Redis+Lua实现简易的秒杀抢购

1  商品抢购主要逻辑是:减库存,记录抢购成功的用户@RestControllerpublicclassDemoController{@ResourceprivateStringRedisTemplatestringRedisTemplate;privatestaticfinalStringGOODS_STOCK_KEY="goods:001";//秒杀商品库存privatestaticfinalStringGOODS_USER_KEY="users:001";//抢购成功的用户列表/***在不加锁的情况下,会发生超卖*/@GetMapping("/seckill")publicStrings

Redis+Lua实现简易的秒杀抢购

1  商品抢购主要逻辑是:减库存,记录抢购成功的用户@RestControllerpublicclassDemoController{@ResourceprivateStringRedisTemplatestringRedisTemplate;privatestaticfinalStringGOODS_STOCK_KEY="goods:001";//秒杀商品库存privatestaticfinalStringGOODS_USER_KEY="users:001";//抢购成功的用户列表/***在不加锁的情况下,会发生超卖*/@GetMapping("/seckill")publicStrings

Lua5.4源码剖析:二. 详解String数据结构及操作算法

概述lua字符串通过操作算法和内存管理,有以下优点:节省内存。字符串比较效率高。(比较哈希值)问题:相同的字符串共享同一份内存么?相同的长字符串一定不共享同一份内存么?lua字符串如何管理内存?数据结构lua字符串TStringtypedefstructTString{CommonHeader;lu_byteextra;/*reservedwordsforshortstrings;"hashash"forlongs*/lu_byteshrlen;/*lengthforshortstrings*/unsignedinthash;union{size_tlnglen;/*lengthforlong

Lua5.4源码剖析:二. 详解String数据结构及操作算法

概述lua字符串通过操作算法和内存管理,有以下优点:节省内存。字符串比较效率高。(比较哈希值)问题:相同的字符串共享同一份内存么?相同的长字符串一定不共享同一份内存么?lua字符串如何管理内存?数据结构lua字符串TStringtypedefstructTString{CommonHeader;lu_byteextra;/*reservedwordsforshortstrings;"hashash"forlongs*/lu_byteshrlen;/*lengthforshortstrings*/unsignedinthash;union{size_tlnglen;/*lengthforlong

Lua脚本在Redis事务中的应用实践

使用过Redis事务的应该清楚,Redis事务实现是通过打包多条命令,单独的隔离操作,事务中的所有命令都会按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。事务中的命令要么全部被执行,要么全部都不执行(原子操作)。但其中有命令因业务原因执行失败并不会阻断后续命令的执行,且也无法回滚已经执行过的命令。如果想要实现和MySQL一样的事务处理可以使用Lua脚本来实现,Lua脚本中可实现简单的逻辑判断,执行中止等操作。1初始Lua脚本Lua是一个小巧的脚本语言,Redis脚本使用Lua解释器来执行脚本。Reids2.6版本通过内嵌支持Lua环境。执行脚本的常用命令为EVAL。编