- 【C# + HALCON 机器视觉】机器视觉在汽车内饰板塑料部件装配中的实战应用
AI_DL_CODE
机器视觉:C#+HALCONc#HALCON机器视觉汽车零部件装配内饰装配形状匹配人机交互
摘要:本文聚焦C#与HALCON技术在汽车内饰板塑料部件自动化装配领域的深度应用,详细阐述基于形状匹配算法的视觉定位技术、C#开发的人机交互界面及设备通信集成方案。通过完整的实操流程和代码示例,展示如何解决传统人工装配精度不稳定的问题,实现装配效率提升35%、良品率从92%提升至98%的显著成效,为汽车制造行业自动化升级提供技术参考。文章目录【C#+HALCON机器视觉】机器视觉在汽车内饰板塑料部
- Halcon 检测物体定位点
吃个糖糖
Halcon人工智能计算机视觉深度学习
文章目录get_domain返回所有输入图像的定义域作为一个区域add_channels给区域增加灰度值find_shape_model发现匹配模板find_shape_models发现最佳模板示例get_domain返回所有输入图像的定义域作为一个区域Halcon中的区域get_domain(Image:Domain::)Image:图像(input_object):类型可以是(多通道-)图像数
- Halcon中如何对特定目标进行定位查找
极客晨风
#Halcon例程项目讲解计算机视觉人工智能图像处理Halconc++
一、项目代码下载项目的完整代码可以通过以下链接进行下载:通过网盘分享的文件:垫片查找.7z链接:https://pan.baidu.com/s/1cexsR99mMWcC2v0k0MJ5LQ?pwd=jkcf提取码:jkcf二、算法流程图像预处理:首先,通过read_image函数读取图像,并利用fast_threshold函数进行图像的阈值化处理。阈值化后的图像会提取出强度值在特定范围内的区域,
- May 18:PHP (了解一下,25种框架)
weixin_30345055
测试phpc/c++
1、LaravelLaravel是一个简单优雅的PHPWeb开发框架,可以将开发者从意大利面条式的代码中解放出来,通过简单、高雅、表达式语法开发出很棒的Web应用,Laravel拥有更富有表现力的语法、高质量的文档、丰富的扩展包,被称为“巨匠级PHP开发框架”。2、PhalconPhalcon是一个开源的、全栈的、用C语言编写的PHP5框架,为开发者提供了网站及应用开发所需的大量高级工具,且Pha
- 深入探讨PHP框架:架构、优势及应用案例
电竞小潘安
本文还有配套的精品资源,点击获取简介:PHP框架为开发PHP应用提供了一套预定义的结构和组件,旨在简化开发流程、提高效率并促进代码复用。介绍了流行的PHP框架如Laravel、Symfony、CodeIgniter、Yii、CakePHP和Phalcon,它们各自的特色和优势。同时,阐述了选择合适框架的考量因素,以及框架对代码标准化、安全性及社区支持的影响。文章总结强调,学习和掌握不同PHP框架对
- C#版Halcon:HalconDotNet最详细最全面教程(万字详细总结)
0仰望星空007
C#计算机视觉HalconHalconDotNet
文章目录第一部分:Halcon基础1.Halcon简介Halcon的安装和配置2.Halcon界面和工具图像显示窗口的使用3.图像处理基础图像的表示和存储图像的基本操作4.图像预处理图像增强技术图像去噪方法图像二值化第二部分:Halcon进阶5.形态学操作腐蚀和膨胀开运算和闭运算形态学梯度6.特征提取边缘检测角点检测区域特征第三部分:Halcon高级应用7.模板匹配基于形状的模板匹配基于灰度的模板
- 如何利用HALCON进行瓶子计数和杂物检测
极客晨风
#Halcon例程项目讲解qt开发语言Halcon计算机视觉
一、项目背景与目标在自动化回收系统中,识别和统计回收箱中瓶子的数量是一项关键任务。该任务不仅要求能够准确地计数,而且需要识别异常瓶子状态(如颠倒、横放)以及检测非瓶子的杂物。为此,本文使用HALCON图像处理库实现了一个完整的检测与分类流程,能够:自动识别回收箱中正常放置的瓶子检测颠倒插入的瓶子并以橙色高亮显示识别横放或其他体积较大的杂物,触发报警提示实现每张图像的逐张处理与用户交互数据集与运行说
- 23-OpenCVSharp —- Cv2.GetAffineTransform()函数功能(仿射变换矩阵)详解
X-Vision
#《OpenCV算子系列》矩阵线性代数计算机视觉人工智能opencv图像处理c#
专栏地址:《OpenCV功能使用详解200篇》《OpenCV算子使用详解300篇》《Halcon算子使用详解300篇》内容持续更新,欢迎点击订阅OpenCVSharp—Cv2.GetAffineTransform()函数详细分析Cv2.GetAffineTransform()是OpenCV中一个用于计算仿射变换矩阵的函数。在图像处理和计算机视觉中,仿射变换广泛应用于图像的旋转、缩放、平移以及更复杂
- 10.区域变换与测量标定
Echo``
Halcon系统化学习算法开发语言人工智能机器学习计算机视觉
目录一、Halcon1.区域的仿射变换2.区域投射变换编辑编辑3.极坐标与笛卡尔坐标的转换4.测量算子5.像素标定二、VS联合编程1.测量助手一、Halcon1.区域的仿射变换*仿射变换*1.变换矩阵*2.affine_trans_region-变换区域*3.affine_trans_image-变换图片*read_image(Image111,'E:/bmp/111.bmp')dev_set_d
- C#Halcon从零开发_Day12_轮廓边缘处理
仙贝大饼
C#联合Halcon从零编程人工智能计算机视觉Halcon机器学习c#轮廓处理
引言之前是依靠卡尺来获取直线,也可以通过xld轮廓来截取直线段dev_get_window(WindowHandle)read_image(Image,'C:/Users/10314/Desktop/pic1.png')一、边缘提取*Edges:提取的亚像素边缘轮廓(XLD格式),包含边缘点的坐标和方向信息*'canny'边缘检测滤波器的类型,决定边缘检测的灵敏度和方向*'lanser2':基于二
- 【设计模式】用观察者模式对比事件订阅(相机举例)
code bean
设计模式设计模式观察者模式c#
用观察者模式对比事件订阅(相机举例)标签:WPF、C#、Halcon、设计模式、观察者模式、事件机制在日常开发中,我们经常使用事件机制(Event)来订阅图像采集信号。然而当系统日益复杂,多个模块同时需要响应图像变化时,事件机制常常暴露出诸多痛点:回调函数难以管理抛异常一个挂全挂❌(详见下文)解耦能力差,测试困难缺乏灵活扩展能力(过滤、异步、重试等)于是我重构了图像采集模块,采用观察者模式(Obs
- opencv实现点到region最小距离,distance_pr
isyoungboy
opencv人工智能计算机视觉
distance_pr的算子很快使用opencv模仿实现一下halcon的region使用rle编码,还有可能使用凸包优化,simd,二分查找,多线程计算,这里只实现基础的功能#include#include#include#include//结构体表示RLE编码的区域点structRLEPoint{inty;intx_start;intx_end;};//从二值图像生成RLE编码的区域表示std
- C#Halcon从零开发_Day10_直线拟合
仙贝大饼
C#联合Halcon从零编程算法Halconc#机器视觉直线拟合
一、引言直线拟合应用场景:产品边缘检测:检测产品的直线边缘(如金属板、塑料件的边缘),判断是否符合设计规格。缺陷检测:通过拟合直线检测边缘的直线度,识别是否存在弯曲、断裂或毛刺等缺陷。长度、宽度测量:通过拟合直线计算物体的长度、宽度等几何尺寸。二、具体实施:dev_get_window(WindowHandle)read_image(Image2,'C:/Users/10314/Desktop/r
- 基于Halcon的条码定位与识别【包含 一维码 和 二维码 】
NCUTer
Halcon计算机视觉图像处理条码识别
1.针对一维码问题,先列代码:dev_update_off()dev_close_window()dev_open_window(0,0,600,819,'black',WindowHandle)dev_set_draw('margin')*读图read_image(Image,'20221213-174036.png')*获取一维码区域对原图进行抠图gen_rectangle1(ROI_0,21
- 1. halcon基础语言语法
Echo``
HALCON系统化学习前端javascript开发语言
目录1.注释2.数据类型1.图像变量2.控制变量3.变量的使用1.在halcon2.在c#4.运算符1.算数运算符2.关系运算符3.逻辑运算符5.选择结构6.快捷键7.循环结构8.数组(集合)9.数组集合运算10.字符串算子11.文件12.冒泡排序1.注释1.符号*2.F4批量注释F3取消注释3.if(false)2.数据类型1.图像变量1.图像image2.区域region3.轮廓xld2.控制
- 使用Halcon进行图像预处理的策略
AI_Guru人工智能
计算机视觉图像处理人工智能
图像预处理是机器视觉系统中的一个关键步骤,它有助于提高图像质量,从而使得后续的图像分析和特征提取更加准确。在Halcon中,图像预处理通常包括滤波、对比度增强、归一化、边缘增强等操作。以下是一些使用Halcon进行图像预处理的策略,以及相应的示例代码。图像预处理策略滤波:去除图像噪声,如高斯滤波、中值滤波等。对比度增强:提高图像的对比度,如直方图均衡化、对比度限制自适应直方图均衡化(CLAHE)。
- Noise噪音halcon算子,持续更新
小邢同学
#Halcon算子解读
目录add_noise_distributionadd_noise_whitegauss_distributionnoise_distribution_meansp_distributionadd_noise_distribution功能:向一个图像添加噪声。add_noise_white功能:向一个图像添加噪声。gauss_distribution功能:产生一个高斯噪声分布。noise_dist
- 【机械视觉】Halcon—【十三、实例找各个区域面积和中心点】
_Csharp
【机械视觉】Halcon前端halcon图像处理
找区域面积和中心点*获取图像read_image(Image,'fabrik')*关闭窗口dev_close_window()*打开窗口dev_open_window(0,0,512,512,'black',WindowID)*设置输出字体,14号字,Courier字体,粗体set_display_font(WindowID,14,'mono','true','false')*设置输出颜色dev_
- HALCON学习笔记(四)——图像增强
weixin_45482443
HALCON学习笔记计算机视觉
图像增强:有目的的强调图像的整体或局部特性,将原来不清晰的图像变得清晰或强调某些感兴趣的特征,扩大图像中不同特征之间的差别,抑制不感兴趣特征,改善图像质量,丰富信息量,满足分析需要。1.图像增强的概念和分类图像增强技术基本分为两类:空间域法:包含图像像素的空间,在空间域中,直接对图像进行各种线性或非线性运算,对图像的像素灰度做增强处。分为点运算(作用于像素领域的处理方法,包括灰度变换,直方图修正,
- Halcon 图像预处理算子
、。纯牛奶最单纯* ̄▽ ̄*
计算机视觉人工智能图像处理
在机器视觉领域,图像的预处理算法十分重要。对于一些成像质量较差,受噪声影响较大的场景中,为保证视觉测量,定位,检测效果的稳定性。、往往第一步就是对图像做处理,这里对常用的预处理算法做总结。*腐蚀图像增加暗部,减少亮部gray_erosion_rect(Image,ImageMin,11,11)*膨胀图像增加增加,减少暗部gray_dilation_rect(Image,ImageMax,11,11
- C#Halcon从零开发_Day2_检测圆形物体上的缺损
仙贝大饼
C#联合Halcon从零编程计算机视觉图像处理c#Halcon机器视觉
一、检测缺损的大致步骤1.Blbo分析--定位读取图像、阈值分割、填充、打散、筛选、形态学操作(膨胀腐蚀)、筛选出关心的区域2获取ROI区域图像获取感兴趣的区域图像3.图像预处理将缺陷进行凸显4.图像算法处理提取缺陷5.结果输出二、检测圆形物体上的缺陷实战1.参数设置*获取窗口句柄dev_get_window(WindowHandle)*设置缺陷最小面积minDefectArea:=2002.读取
- Halcon透视变换(投影变换)边形
wsfeimo
Halcon透视变换图像变形算法
透视变换:透视变换同样是一种改变对象尺寸和形状的操作,一个平面图形经透视变换后可产生立体效果。以矩形为例,错切变换只移动同一条边上的两个顶点,且这两个顶点的移动方向相同,对边的两个顶点保持不动。变换前:变换后:获取目标轮廓四个角点->设定新角点坐标->创建变换矩阵->施行变换dev_update_off()dev_close_window()dev_open_window(0,0,612,512,
- halcon投影变换矩阵projective_trans_point_2d的使用(用于平移标定)
*Major*-莙工科技有限公司
矩阵python前端
halcon投影变换矩阵projective_trans_point_2d的使用(用于平移标定)*读取二进制平移矩阵open_file('平移矩阵.mat','input_binary',FileHandle)fread_serialized_item(FileHandle,SerializedItemHandle)deserialize_hom_mat2d(SerializedItemHandl
- halcon基本语法
一杯解心烦
HalconHalcon
halcon里面的代码和C#的代码有些相似但有不同,例如变量的创建。*1halcon使用:=进行赋值x:=10*2字符串的赋值单引号赋值s:='abc'“*”号是halcon里面的注释,同样我们还可以举例条件的判断。*3条件判断使用=if(x=10)x:=999endif*4使用#代表是否不相等if(x#10)x:=666endif*5逻辑and并且if(x=666ands='abc')x:=88
- HALCON 深度学习训练 3D 图像的几种方式优缺点
LeonDL168
Halcon深度学习3d人工智能HALCON训练3D图像深度学习训练3D图像HALCONpython
HALCON深度学习训练3D图像的几种方式优缺点**在计算机视觉和工业检测等领域,3D图像数据的处理和分析变得越来越重要,HALCON作为一款强大的机器视觉软件,提供了多种深度学习训练3D图像的方式。每种方式都有其独特的设计思路和应用场景,了解它们的优缺点有助于根据具体需求选择最合适的训练方法。基于体素化的训练方式优点数据结构规整:体素化将3D图像转换为类似3D网格的数据结构,这种规整的数据形式能
- Halcon3D--两平面夹角计算
Ikun113344
halcon3D视觉halcon3D平面
目录实现效果显示效果输出结果代码主函数:dome.hdev滤波函数:abnormity_filter计算函数:plane_IncludedAngle实现效果显示效果输出结果代码主函数:dome.hdev咸鱼账号tbNick_mtm4n滤波函数:abnormity_filter咸鱼账号tbNick_mtm4n计算函数:plane_IncludedAngle咸鱼账号tbNick_mtm4n
- halcon 点云处理_Halcon三维模型预处理(1):调平的三大手法
weixin_39944074
halcon点云处理
面结构光拍摄生成的点云模型,往往相对系统坐标系是有角度的。首先讲一下调平的目的:1.为接下来的预处理切除背景面做准备3.不做调平,后续处理会很麻烦,因为不清楚坐标系在平台的为位置2.对于无序抓取项目,平台相对相机可能是有角度的,将抓取平台调整到与相机平行,可以以Z轴方向,从高到低获取抓取物点云。处理速度更快,且干扰更少。常见的调平手法有三种。一.拟合平面方式该方法适合平面点云模型的调平处理回顾一下
- [海康相机] 连接相机失败:未安装USB3驱动或驱动无效
丶布布
Hw◎视觉硬件海康相机连接失败未安装驱动USB3驱动无效halcon驱动占用
博客主页:https://loewen.blog.csdn.net/?type=blog欢迎点赞收藏⭐留言如有错误敬请指正!本文由Loewen丶原创,首发于CSDN,转载注明出处现在的付出,都会是一种沉淀,只为让你成为更好的人✨文章预览:一、前言二、问题分析三、解决措施四、兼容Halcon打开HK相机一、前言设备信息:Win10+Halcon13+海康工业相机(MV-CH120-10UM系列)HK
- 3D拟合测量水杯半径
lingxiao16888
3D视觉视觉3d
1,目的。测量水杯的半径如图所示:2,原理。对3D点云对象进行圆柱体拟合,获取拟合后的半径。3,注意事项。在Halcon中使用fit_primitives_object_model_3d进行圆柱体拟合时,输出的primitive_parameter包含以下7个参数:参数构成-轴线方向向量3个数值:(a,b,c)描述圆柱体轴线的空间方向,满足归一化条件a²+b²+c²=1.-轴线上基准点坐标
- Halcon常用算子及功能解释(包括用法)
埃菲尔铁塔_CV算法
计算机视觉人工智能图像处理
一、图像显示与窗口操作dev_open_window功能:打开新的图形窗口。可以指定窗口位置、大小和背景颜色等参数。这个窗口用于后续显示图像、区域等图形对象和文本信息。示例:dev_open_window(0,0,512,512,'black',WindowHandle),其中0,0是窗口左上角坐标,512,512是窗口大小,'black'是背景颜色,WindowHandle用于存储窗口句柄。de
- 强大的销售团队背后 竟然是大数据分析的身影
蓝儿唯美
数据分析
Mark Roberge是HubSpot的首席财务官,在招聘销售职位时使用了大量数据分析。但是科技并没有挤走直觉。
大家都知道数理学家实际上已经渗透到了各行各业。这些热衷数据的人们通过处理数据理解商业流程的各个方面,以重组弱点,增强优势。
Mark Roberge是美国HubSpot公司的首席财务官,HubSpot公司在构架集客营销现象方面出过一份力——因此他也是一位数理学家。他使用数据分析
- Haproxy+Keepalived高可用双机单活
bylijinnan
负载均衡keepalivedhaproxy高可用
我们的应用MyApp不支持集群,但要求双机单活(两台机器:master和slave):
1.正常情况下,只有master启动MyApp并提供服务
2.当master发生故障时,slave自动启动本机的MyApp,同时虚拟IP漂移至slave,保持对外提供服务的IP和端口不变
F5据说也能满足上面的需求,但F5的通常用法都是双机双活,单活的话还没研究过
服务器资源
10.7
- eclipse编辑器中文乱码问题解决
0624chenhong
eclipse乱码
使用Eclipse编辑文件经常出现中文乱码或者文件中有中文不能保存的问题,Eclipse提供了灵活的设置文件编码格式的选项,我们可以通过设置编码 格式解决乱码问题。在Eclipse可以从几个层面设置编码格式:Workspace、Project、Content Type、File
本文以Eclipse 3.3(英文)为例加以说明:
1. 设置Workspace的编码格式:
Windows-&g
- 基础篇--resources资源
不懂事的小屁孩
android
最近一直在做java开发,偶尔敲点android代码,突然发现有些基础给忘记了,今天用半天时间温顾一下resources的资源。
String.xml 字符串资源 涉及国际化问题
http://www.2cto.com/kf/201302/190394.html
string-array
- 接上篇补上window平台自动上传证书文件的批处理问卷
酷的飞上天空
window
@echo off
: host=服务器证书域名或ip,需要和部署时服务器的域名或ip一致 ou=公司名称, o=公司名称
set host=localhost
set ou=localhost
set o=localhost
set password=123456
set validity=3650
set salias=s
- 企业物联网大潮涌动:如何做好准备?
蓝儿唯美
企业
物联网的可能性也许是无限的。要找出架构师可以做好准备的领域然后利用日益连接的世界。
尽管物联网(IoT)还很新,企业架构师现在也应该为一个连接更加紧密的未来做好计划,而不是跟上闸门被打开后的集成挑战。“问题不在于物联网正在进入哪些领域,而是哪些地方物联网没有在企业推进,” Gartner研究总监Mike Walker说。
Gartner预测到2020年物联网设备安装量将达260亿,这些设备在全
- spring学习——数据库(mybatis持久化框架配置)
a-john
mybatis
Spring提供了一组数据访问框架,集成了多种数据访问技术。无论是JDBC,iBATIS(mybatis)还是Hibernate,Spring都能够帮助消除持久化代码中单调枯燥的数据访问逻辑。可以依赖Spring来处理底层的数据访问。
mybatis是一种Spring持久化框架,要使用mybatis,就要做好相应的配置:
1,配置数据源。有很多数据源可以选择,如:DBCP,JDBC,aliba
- Java静态代理、动态代理实例
aijuans
Java静态代理
采用Java代理模式,代理类通过调用委托类对象的方法,来提供特定的服务。委托类需要实现一个业务接口,代理类返回委托类的实例接口对象。
按照代理类的创建时期,可以分为:静态代理和动态代理。
所谓静态代理: 指程序员创建好代理类,编译时直接生成代理类的字节码文件。
所谓动态代理: 在程序运行时,通过反射机制动态生成代理类。
一、静态代理类实例:
1、Serivce.ja
- Struts1与Struts2的12点区别
asia007
Struts1与Struts2
1) 在Action实现类方面的对比:Struts 1要求Action类继承一个抽象基类;Struts 1的一个具体问题是使用抽象类编程而不是接口。Struts 2 Action类可以实现一个Action接口,也可以实现其他接口,使可选和定制的服务成为可能。Struts 2提供一个ActionSupport基类去实现常用的接口。即使Action接口不是必须实现的,只有一个包含execute方法的P
- 初学者要多看看帮助文档 不要用js来写Jquery的代码
百合不是茶
jqueryjs
解析json数据的时候需要将解析的数据写到文本框中, 出现了用js来写Jquery代码的问题;
1, JQuery的赋值 有问题
代码如下: data.username 表示的是: 网易
$("#use
- 经理怎么和员工搞好关系和信任
bijian1013
团队项目管理管理
产品经理应该有坚实的专业基础,这里的基础包括产品方向和产品策略的把握,包括设计,也包括对技术的理解和见识,对运营和市场的敏感,以及良好的沟通和协作能力。换言之,既然是产品经理,整个产品的方方面面都应该能摸得出门道。这也不懂那也不懂,如何让人信服?如何让自己懂?就是不断学习,不仅仅从书本中,更从平时和各种角色的沟通
- 如何为rich:tree不同类型节点设置右键菜单
sunjing
contextMenutreeRichfaces
组合使用target和targetSelector就可以啦,如下: <rich:tree id="ruleTree" value="#{treeAction.ruleTree}" var="node" nodeType="#{node.type}"
selectionChangeListener=&qu
- 【Redis二】Redis2.8.17搭建主从复制环境
bit1129
redis
开始使用Redis2.8.17
Redis第一篇在Redis2.4.5上搭建主从复制环境,对它的主从复制的工作机制,真正的惊呆了。不知道Redis2.8.17的主从复制机制是怎样的,Redis到了2.4.5这个版本,主从复制还做成那样,Impossible is nothing! 本篇把主从复制环境再搭一遍看看效果,这次在Unbuntu上用官方支持的版本。 Ubuntu上安装Red
- JSONObject转换JSON--将Date转换为指定格式
白糖_
JSONObject
项目中,经常会用JSONObject插件将JavaBean或List<JavaBean>转换为JSON格式的字符串,而JavaBean的属性有时候会有java.util.Date这个类型的时间对象,这时JSONObject默认会将Date属性转换成这样的格式:
{"nanos":0,"time":-27076233600000,
- JavaScript语言精粹读书笔记
braveCS
JavaScript
【经典用法】:
//①定义新方法
Function .prototype.method=function(name, func){
this.prototype[name]=func;
return this;
}
//②给Object增加一个create方法,这个方法创建一个使用原对
- 编程之美-找符合条件的整数 用字符串来表示大整数避免溢出
bylijinnan
编程之美
import java.util.LinkedList;
public class FindInteger {
/**
* 编程之美 找符合条件的整数 用字符串来表示大整数避免溢出
* 题目:任意给定一个正整数N,求一个最小的正整数M(M>1),使得N*M的十进制表示形式里只含有1和0
*
* 假设当前正在搜索由0,1组成的K位十进制数
- 读书笔记
chengxuyuancsdn
读书笔记
1、Struts访问资源
2、把静态参数传递给一个动作
3、<result>type属性
4、s:iterator、s:if c:forEach
5、StringBuilder和StringBuffer
6、spring配置拦截器
1、访问资源
(1)通过ServletActionContext对象和实现ServletContextAware,ServletReque
- [通讯与电力]光网城市建设的一些问题
comsci
问题
信号防护的问题,前面已经说过了,这里要说光网交换机与市电保障的关系
我们过去用的ADSL线路,因为是电话线,在小区和街道电力中断的情况下,只要在家里用笔记本电脑+蓄电池,连接ADSL,同样可以上网........
 
- oracle 空间RESUMABLE
daizj
oracle空间不足RESUMABLE错误挂起
空间RESUMABLE操作 转
Oracle从9i开始引入这个功能,当出现空间不足等相关的错误时,Oracle可以不是马上返回错误信息,并回滚当前的操作,而是将操作挂起,直到挂起时间超过RESUMABLE TIMEOUT,或者空间不足的错误被解决。
这一篇简单介绍空间RESUMABLE的例子。
第一次碰到这个特性是在一次安装9i数据库的过程中,在利用D
- 重构第一次写的线程池
dieslrae
线程池 python
最近没有什么学习欲望,修改之前的线程池的计划一直搁置,这几天比较闲,还是做了一次重构,由之前的2个类拆分为现在的4个类.
1、首先是工作线程类:TaskThread,此类为一个工作线程,用于完成一个工作任务,提供等待(wait),继续(proceed),绑定任务(bindTask)等方法
#!/usr/bin/env python
# -*- coding:utf8 -*-
- C语言学习六指针
dcj3sjt126com
c
初识指针,简单示例程序:
/*
指针就是地址,地址就是指针
地址就是内存单元的编号
指针变量是存放地址的变量
指针和指针变量是两个不同的概念
但是要注意: 通常我们叙述时会把指针变量简称为指针,实际它们含义并不一样
*/
# include <stdio.h>
int main(void)
{
int * p; // p是变量的名字, int *
- yii2 beforeSave afterSave beforeDelete
dcj3sjt126com
delete
public function afterSave($insert, $changedAttributes)
{
parent::afterSave($insert, $changedAttributes);
if($insert) {
//这里是新增数据
} else {
//这里是更新数据
}
}
 
- timertask
shuizhaosi888
timertask
java.util.Timer timer = new java.util.Timer(true);
// true 说明这个timer以daemon方式运行(优先级低,
// 程序结束timer也自动结束),注意,javax.swing
// 包中也有一个Timer类,如果import中用到swing包,
// 要注意名字的冲突。
TimerTask task = new
- Spring Security(13)——session管理
234390216
sessionSpring Security攻击保护超时
session管理
目录
1.1 检测session超时
1.2 concurrency-control
1.3 session 固定攻击保护
 
- 公司项目NODEJS实践0.3[ mongo / session ...]
逐行分析JS源代码
mongodbsessionnodejs
http://www.upopen.cn
一、前言
书接上回,我们搭建了WEB服务端路由、模板等功能,完成了register 通过ajax与后端的通信,今天主要完成数据与mongodb的存取,实现注册 / 登录 /
- pojo.vo.po.domain区别
LiaoJuncai
javaVOPOJOjavabeandomain
POJO = "Plain Old Java Object",是MartinFowler等发明的一个术语,用来表示普通的Java对象,不是JavaBean, EntityBean 或者 SessionBean。POJO不但当任何特殊的角色,也不实现任何特殊的Java框架的接口如,EJB, JDBC等等。
即POJO是一个简单的普通的Java对象,它包含业务逻辑
- Windows Error Code
OhMyCC
windows
0 操作成功完成.
1 功能错误.
2 系统找不到指定的文件.
3 系统找不到指定的路径.
4 系统无法打开文件.
5 拒绝访问.
6 句柄无效.
7 存储控制块被损坏.
8 存储空间不足, 无法处理此命令.
9 存储控制块地址无效.
10 环境错误.
11 试图加载格式错误的程序.
12 访问码无效.
13 数据无效.
14 存储器不足, 无法完成此操作.
15 系
- 在storm集群环境下发布Topology
roadrunners
集群stormtopologyspoutbolt
storm的topology设计和开发就略过了。本章主要来说说如何在storm的集群环境中,通过storm的管理命令来发布和管理集群中的topology。
1、打包
打包插件是使用maven提供的maven-shade-plugin,详细见maven-shade-plugin。
<plugin>
<groupId>org.apache.maven.
- 为什么不允许代码里出现“魔数”
tomcat_oracle
java
在一个新项目中,我最先做的事情之一,就是建立使用诸如Checkstyle和Findbugs之类工具的准则。目的是制定一些代码规范,以及避免通过静态代码分析就能够检测到的bug。 迟早会有人给出案例说这样太离谱了。其中的一个案例是Checkstyle的魔数检查。它会对任何没有定义常量就使用的数字字面量给出警告,除了-1、0、1和2。 很多开发者在这个检查方面都有问题,这可以从结果
- zoj 3511 Cake Robbery(线段树)
阿尔萨斯
线段树
题目链接:zoj 3511 Cake Robbery
题目大意:就是有一个N边形的蛋糕,切M刀,从中挑选一块边数最多的,保证没有两条边重叠。
解题思路:有多少个顶点即为有多少条边,所以直接按照切刀切掉点的个数排序,然后用线段树维护剩下的还有哪些点。
#include <cstdio>
#include <cstring>
#include <vector&