发现问题 需求很简单,大致就是要批量往数据库写数据,于是打算用Parallel并行的方式写入,希望能利用计算机多核特性加快程序执行速度.想的很美好,于是快速撸了类似下面的一串代码: using (var db = new SmsEntities()) { Parallel.For(, , (i) => { db.MemberCard.Add(new MemberCard() { CardNo = "NO_" + i.ToString(), Banlance = , CreateT…
在我们运行项目前,都需要将项目部署到tomcat上,但是有时我们会遇到这种情况:项目明明存在,但是eclipse中tomcat的add and remove找不到项目,无法部署,那么这个问题该如何解决呢? 工具/原料   eclipse 项目 方法/步骤     假设,我们现在想要启动项目xxx,需要同时将xxx_service,xxx_webapp部署到tomcat服务器上.   我们在下方的server选项卡中右击tomcat服务器,选择add and remove.   这时候我们发现,在…
建议83:小心Parallel中的陷阱 Parallel的For和ForEach方法还支持一些相对复杂的应用.在这些应用中,它允许我们在每个任务启动时执行一些初始化操作,在每个任务结束后,又执行一些后续工作,同时,还允许我们监视任务的状态.但是,记住上面这句话“允许我们监视任务的状态”是错误的:应该把其中的“任务”改成“线程”.这,就是陷阱所在. 我们需要深刻理解这些具体的操作和应用,不然,极有可能陷入这个陷阱中去.下面体会这段代码的输出是什么,如下所示: static void Main(st…
最近调试HEVC中码率控制, 发现里面一个重大bug! 码率控制中有这么一个函数: Int TEncRCGOP::xEstGOPTargetBits( TEncRCSeq* encRCSeq, Int GOPSize ) {   Int realInfluencePicture = min( g_RCSmoothWindowSize, encRCSeq->getFramesLeft() );   Int averageTargetBitsPerPic = (Int)( encRCSeq->ge…
在执行某个项目中的APP测试发现的两个问题,自然也是提供参考,作为经验记录下来. 一.通过apk的xml文件获取到某项目APP的账号和密码 使用eclipsel或者drozer,获得apk的xml文件.注意:本次步骤需要使用root的手机. 自然,通过xml我们可以获得我们需要的东西.这样子,还放心把自己的账号密码在别人的手机上登录吗?当然,这仅仅只是测试,协助开发发现并解决问题. 二.通过查找ssh是否开放 使用nmap来查找目标主机开放的端口: 根据端口来暴力破解,目前这里有个ssh端口可以…
建议86:Parallel中的异常处理 建议85阐述了如何处理Task中的异常.由于Task的Start方法是异步启动的,所以我们需要额外的技术来完成异常处理.Parallel相对来说就要简单很多,因为Parallel的调用者线程会等到所有的任务全部完成后,再继续自己的工作.简单来说,它具有同步的特性,所以,用下面的这段代码就可以实现将并发异常包装到主线程中: static void Main(string[] args) { try { var parallelExceptions = new…
seata服务端和客户端配置(使用nacos进行注册发现,使用mysql进行数据持久化),以及过程中可能会出现的问题与解决方案 说明: 之所以只用nacos进行了注册与发现,因为seata使用nacos后进行配置中心的化,需要往nacos中导入py脚本生成配置,还需要在服务端多加两个配置,过程比较繁琐,容易出问题,不太适合对这个框架理解不是很深的开发者 版本说明: mysql 5.7seata 1.4springboot:2.3.7 springcloud:Hoxton.SR12springcl…
问题描述 第一次在Add Frameworks support界面中添加hibernate支持的时候,异常中断,导致没有成功添加. 第二次进入Add Frameworks support窗口时,发现找不到hibernate. 解决办法 打开项目根目录下的spring-mvc-crud.iml文件,搜索hibernate找到这段代码并删除,然后重新添加框架支持即可选择hibernate. <facet type="hibernate" name="Hibernate&qu…
第一次搭建android开发环境,装完adb以后,打开DOS验证安装是否成功:但输入adb logcat调试时,系统弹出以下异常的对话框: 无法启动此程序,因为计算机中丢失AdbWinApi.dll.尝试重新安装该程序以解决此问题.   网上搜索发现原因很简单,缺少AdbWinApi.dll文件. 网上说把这个文件直接放在windows/system32下就OK了,我是64位系统,起初放这个目录不行,最后放在C:Windows\SysWOW64目录解决了问题.   关于AdbWinApi.dll…
rpm包安装过程中依赖问题"libc.so.6 is needed by XXX"解决方法 折腾了几天,终于搞定了CentOS上的Canon LBP2900打印机驱动.中间遇到了一些问题,主要是安装rpm包出现的依赖问题,费尽周折总算是解决了.现在简单总结一下. 首先说明一下,我用的CentOS版本是6.6,64位.打印机驱动程序是两个rpm安装包:cndrvcups-common-2.60-1.x86_64.rpm和cndrvcups-capt-2.60-1.x86_64.rpm.…