写字就能赚钱做网站wordpress免费插件下载地址

pingmian/2025/10/8 21:15:18/文章来源:
写字就能赚钱做网站,wordpress免费插件下载地址,怎么自己做电商,企业邮箱在哪里查看本文内容 先决条件为什么要实现弱事件模式#xff1f;应该由谁实现弱事件模式#xff1f;如何实现弱事件模式 在应用程序中#xff0c;附加到事件源的处理程序可能不会与将处理程序附加到源的侦听器对象一同销毁。 这种情况下会导致内存泄漏。 Windows Presentation Found…本文内容 先决条件为什么要实现弱事件模式应该由谁实现弱事件模式如何实现弱事件模式 在应用程序中附加到事件源的处理程序可能不会与将处理程序附加到源的侦听器对象一同销毁。 这种情况下会导致内存泄漏。 Windows Presentation Foundation (WPF) 引入了可用于解决此问题的设计模式。 设计模式为特定事件提供专用的管理器类并在该事件的侦听器上实现接口。 此设计模式称为弱事件模式。 1、先决条件 本文假定你对路由事件有基本的了解并且已阅读 路由事件概述。 若要遵循本文中的示例如果熟悉 Extensible Application Markup Language (XAML) 并知道如何编写 Windows Presentation Foundation (WPF) 应用程序将会很有帮助。 2、为什么要实现弱事件模式 对事件的侦听可能会导致内存泄漏。 侦听事件的常用技术是使用特定于语言的语法将处理程序附加到源上的事件。 例如C# 语句 source.SomeEvent new SomeEventHandler(MyEventHandler) 或 VB 语句 AddHandler source.SomeEvent, AddressOf MyEventHandler。 然而此技术可创建从事件源到事件侦听器的强引用。 除非显式注销事件处理程序否则侦听器的对象生存期将受到源的对象生存期的影响。 在某些情况下你可能希望通过其他因素例如当前是否属于应用程序的可视化树控制侦听器的对象生存期。 每当源的对象生存期超出侦听器的有用对象生存期时侦听器的存活时间比必要时间要长。 在这种情况下未分配的内存相当于内存泄漏。 弱事件模式旨在解决内存泄漏问题。 当侦听器需要注册事件时都可以使用弱事件模式但侦听器并不明确知晓事件会在何时注销。 当源的对象生存期超过侦听器的有用对象生存期时也可以使用弱事件模式。 在这种情况下有用与否将由你来决定。 弱事件模式允许侦听器注册事件和接收事件而不会以任何方式影响侦听器的对象生存期特征。 实际上对源的隐式引用并不能确定侦听器是否有资格执行垃圾回收。 由于是弱引用因而引用是对弱事件模式和相关 API 的命名。 侦听器可以被垃圾回收或以其他方式销毁而源可以继续运行无需保留针对现已销毁的对象的不可回收的处理程序引用。 3、应该由谁实现弱事件模式 弱事件模式主要与控件作者相关。 控件作者主要负责控件行为和控件包含以及控件对其所插入的应用程序的影响。 这包括控件对象生存期行为特别是处理所述的内存泄漏问题。 某些方案本身就适合应用弱事件模式。 此类方案之一是数据绑定。 在数据绑定中源对象通常独立于作为绑定目标的侦听器对象。 WPF 数据绑定的许多方面已经在事件的实现方式上应用了弱事件模式。 4、如何实现弱事件模式 有四种方法可以实现弱事件模式每种方法都使用不同的事件管理器。 选择最适合你的方案的事件管理器。 现有弱事件管理器 当要订阅的事件具有对应的 WeakEventManager请使用现有的弱事件管理器。 有关 WPF 附带的弱事件管理器列表请参阅 WeakEventManager 类中的继承层次结构。 由于包含的弱事件管理器有限可能需要选择其他方法中的一个。 通用弱事件管理器 如果现有的 WeakEventManagerTEventSource,TEventArgs 事件不可用并且你正在寻找实现弱事件的最简单方法请使用泛型 WeakEventManager。 但是泛型 WeakEventManagerTEventSource,TEventArgs 比现有或自定义弱事件管理器更低效因为它使用反射从其名称中发现事件。 此外使用泛型 WeakEventManagerTEventSource,TEventArgs 注册事件所需的代码比使用现有或自定义 WeakEventManager 注册事件所需的代码更详细。 自定义弱事件管理器 在现有 WeakEventManager 不可用且效率至关重要时创建自定义的 WeakEventManager。 尽管比泛型 WeakEventManager 更有效但自定义 WeakEventManager 要求编写更多前期代码。 第三方弱事件管理器 当需要其他方法未提供的功能时请使用第三方弱事件管理器。 NuGet 具有一些较弱的事件管理器 。 以下部分介绍如何通过使用不同的事件管理器类型来实现弱事件模式。 对于泛型和自定义弱事件管理器示例要订阅的事件具有以下特征。 事件名称为 SomeEvent。事件由 SomeEventSource 类引发。事件处理程序的类型为 EventHandlerSomeEventArgs。事件将 SomeEventArgs 类型的参数传递给事件处理程序。 4.1 使用现有弱事件管理器类 查找现有弱事件管理器。 有关 WPF 附带的弱事件管理器列表请参阅 WeakEventManager 类的继承层次结构。 使用新的弱事件管理器而不是普通事件挂钩。 例如如果代码使用以下模式订阅事件 source.LostFocus new RoutedEventHandler(Source_LostFocus);将其更改为以下模式 LostFocusEventManager.AddHandler(source, Source_LostFocus);同样如果代码使用以下模式取消订阅事件 source.LostFocus - new RoutedEventHandler(Source_LostFocus);将其更改为以下模式 LostFocusEventManager.RemoveHandler(source, Source_LostFocus);4.2 使用泛型弱事件管理器类 使用泛型 WeakEventManagerTEventSource,TEventArgs 类而不是普通事件挂钩。 使用 WeakEventManagerTEventSource,TEventArgs 注册事件侦听器时需要将事件源和 EventArgs 类型作为类型参数提供给类。 调用 AddHandler如以下代码所示 WeakEventManagerSomeEventSource, SomeEventArgs.AddHandler(source, SomeEvent, Source_SomeEvent);4.3 创建自定义弱事件管理器类 将以下类模板复制到项目。 以下类继承自 WeakEventManager 类 class SomeEventWeakEventManager : WeakEventManager {private SomeEventWeakEventManager(){}/// summary/// Add a handler for the given sources event./// /summarypublic static void AddHandler(SomeEventSource source,EventHandlerSomeEventArgs handler){if (source null)throw new ArgumentNullException(nameof(source));if (handler null)throw new ArgumentNullException(nameof(handler));CurrentManager.ProtectedAddHandler(source, handler);}/// summary/// Remove a handler for the given sources event./// /summarypublic static void RemoveHandler(SomeEventSource source,EventHandlerSomeEventArgs handler){if (source null)throw new ArgumentNullException(nameof(source));if (handler null)throw new ArgumentNullException(nameof(handler));CurrentManager.ProtectedRemoveHandler(source, handler);}/// summary/// Get the event manager for the current thread./// /summaryprivate static SomeEventWeakEventManager CurrentManager{get{Type managerType typeof(SomeEventWeakEventManager);SomeEventWeakEventManager manager (SomeEventWeakEventManager)GetCurrentManager(managerType);// at first use, create and register a new managerif (manager null){manager new SomeEventWeakEventManager();SetCurrentManager(managerType, manager);}return manager;}}/// summary/// Return a new list to hold listeners to the event./// /summaryprotected override ListenerList NewListenerList(){return new ListenerListSomeEventArgs();}/// summary/// Listen to the given source for the event./// /summaryprotected override void StartListening(object source){SomeEventSource typedSource (SomeEventSource)source;typedSource.SomeEvent new EventHandlerSomeEventArgs(OnSomeEvent);}/// summary/// Stop listening to the given source for the event./// /summaryprotected override void StopListening(object source){SomeEventSource typedSource (SomeEventSource)source;typedSource.SomeEvent - new EventHandlerSomeEventArgs(OnSomeEvent);}/// summary/// Event handler for the SomeEvent event./// /summaryvoid OnSomeEvent(object sender, SomeEventArgs e){DeliverEvent(sender, e);} }重命名 SomeEventWeakEventManager、SomeEvent、SomeEventSource 和 SomeEventArgs 以匹配事件名称。 设置弱事件管理器类的 访问修饰符用于匹配其管理的事件的可访问性。 使用新的弱事件管理器而不是普通事件挂钩。 例如如果代码使用以下模式订阅事件 source.SomeEvent new EventHandlerSomeEventArgs(Source_SomeEvent);将其更改为以下模式 SomeEventWeakEventManager.AddHandler(source, Source_SomeEvent);同样如果代码使用以下模式取消订阅事件 source.SomeEvent - new EventHandlerSomeEventArgs(Source_SomeEvent);将其更改为以下模式 SomeEventWeakEventManager.RemoveHandler(source, Source_SomeEvent);

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/90156.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

建设工业网站php网站开发设计系统

1 基本框架 ①:文字变成向量 ②:喂入噪声文字encoder,产生中间产物 ③:decoder 还原图片 2 text encoder 这张图越往右下表示效果越好,可以看到text encoder尺寸越大,对后续生成图片的增益越多 3 评价图…

网站开发过程阶段外贸网站contact

PID(progress ID 进程ID) 上图为占用情况,使用下面的指令都不管用 kill -9 PID kill -15 PID # 加入sudo 还是不行 # 等等网上的 chatgpt 提供的其他办法,一圈试了下来还是不管用最后解决办法 首先用下面的指令查看进程的树结构…

建筑材料价格查询网站网页设计与制作txt

随着ChatGPT这一先进的自然语言处理模型的出现,教学、学习、测评和辅导的传统方式正在面临可能的重塑。她是否会影响中文教育的未来方向,甚至取代中文教师的角色,成为了许多人热议的话题。本文旨在探讨ChatGPT与中文测评之间的联系&#xff0…

网站开辟两学一做专栏砀山做网站的公司

设计 MySQL 的大叔依据一些规则,竭尽全力的把一些很糟糕的语句转换成某种可以比较高效执行的形式,这个过程也可以被称作 查询重写 (就是人家觉得你写的语句不好,自己再重写一遍)。 1.条件化简 我们编写的查询语句的搜…

网站建设的主题什么比较好网站开发工程师面试试题

MySQL升级版本 5.7.43 必须升级驱动版本 8.0 以上版本 启动项目报错 使用Druid数据库连接池获取Mysql常见的错误--不兼容问题 后来百度搜索发现原来是Mysql版本和mysql-connector-java版本不一致造成的。 查询Mysql版本号: SELECT version(); 然后去官网找对应版…

10分钟快速建网站新站如何快速收录

微软网络近期遭黑客入侵,高管电子邮件被监视长达两个月。 一位研究员表示,黑客通过获取一个拥有管理员权限的老旧测试帐号的访问权限来实施入侵,这是微软犯下的重大失误。 微软在1月25日(上周四)发布第二篇公告&…

做邮轮的网站文章代写

1. AI Santa by Tavus 标语:随时随地,视频连线圣诞老人! 介绍:准备好迎接AI圣诞老人了吗?塔武斯公司推出的这款神奇的节日体验,能让你实时用30多种语言与圣诞老人对话,看看自己今年是乖孩子还…

为什么要建设营销型网站智能建造的发展趋势

前言: 目前开发需要用到电脑直接连接外卖小票机打印小票,查阅各种资料,使用 6612345浏览器 终于解决了这个问题。 效果: PHP、js直接连接小票机并且自动出票。 支持的小票机: 目前测试可以的有:电脑A4打印…

专业网站制作哪专业建筑涂料网站设计

1.效果图艺术与规划说他想与我合作在全国率先主角光环加,椭圆形走动。cocos2d自带没有,參考网上的写了一个。2.椭圆数学知识有关椭圆的数学知识我已经忘光了。网上找了点资料:a是椭圆的长半轴,b是椭圆的短半轴。o是角度&#xff0…

襄阳网站制作公司有哪些lisp 网站开发

L2-001. 紧急救援 作为一个城市的应急救援队伍的负责人,你有一张特殊的全国地图。在地图上显示有多个分散的城市和一些连接城市的快速道路。每个城市的救援队数量和每一条连接两个城市的快速道路长度都标在地图上。当其他城市有紧急求助电话给你的时候,你…

WordPress一键开启全站SSLdede模板网站如何搭建

嗯。调试时总发现自己打印的调试信息太过普通、单调,于是乎…… Notice 要在终端实现字体的特殊样式,通常通过使用特殊的控制字符来实现,而不是通过某语言本身的功能来实现。 在大多数终端中,可以使用 ANSI 转义序列来设置字体的…

性价比高的做网站公司wordpress插件手动升级

2019独角兽企业重金招聘Python工程师标准>>> 转载于:https://my.oschina.net/garyxiong/blog/624619

古风网站的关于我们页面怎么做产品代理推广方案

文章目录 职业分析与计算机方向的选择、发展一:编程学习解读与职业分析1.编程的学习阶段:(1)入门阶段(2)熟悉阶段(3)学到什么程度才叫精通呢? 2.职业分析(1&a…

重庆seo网站策划阿芹网站建设

首先登录码云 https://gitee.com/,注册一个账号,并登录账号。1. 在码云上创建项目在码云首页顶部,下图所示,右上角头像旁边的加号,鼠标移上去会显示下拉的,点击“新建项目”。填写好项目的名称、路径等&…

建站公司费用情况静态网站如何做优化

定义一对一关联,例如,一个用户都有一个个人资料。 一、两表 1.用户表:user 2.工作经验表:work_experience user表的id关联work_experience表的user_id。 注意看,user_id1的有2条工作经验 二、数据模型 主表模型:…

英语网站开发的背景台州网站平面设计

简介: 函数计算可观测性经历了 1.0 -> 2.0 的发展,从闭门造车的可观测发展成开源的可观测,从平台的可观测发展为开发者的可观测,从FaaS Only 的可观测演进成了云原生的可观测。 作者:夏莞 背景 Serverless 将成为…

帮人做ppt的网站某企业电子商务网站建设

在rime中州韵小狼毫 联想词组 滤镜一文中,我们通过Filter滤镜功能配置了联想词组的功能,这使得我们在输入一些关键词汇时,可以联想补充一些附加的词组,例如我输入“手机”,就可以联想补充对应的手机号,如下…

电力建设期刊网站经常维护吗php做网站难吗

基于vue3 ant-design 自定义SVG图标iconfont的解决方案; ant-design加载本地iconfont.js不显示图标问题 一、准备工作 1、首先去阿里巴巴矢量图标库自定义添加自己的图标;网站地址https://www.iconfont.cn/ 整个步骤是:选择图标–添加到项…

爱站网在线全集私人影视软件开发模型是什么

题目描述 小明很喜欢猜谜语。最近,他被邀请参加了X星球的猜谜活动。 每位选手开始的时候都被发给777个电子币。 规则是:猜对了,手里的电子币数目翻倍,猜错了,扣除555个电子币, 扣完为止。 小明一共猜了15条谜语。战果…

重庆手机模板建站海南建设培训与执业中心网站

新增的功能多种手势,轻触即发,针对支持触摸屏设备,支持单击、双击、唤出右键菜单、上下滑动等多种触摸屏手势。搭配屏幕键盘,让您随心所欲,手指点到即得到。随机应变,识变从宜,推出智能镜像源概…