扩大
缩小

07 2019 档案

C#中重写(override)和覆盖(new)的区别
摘要:重写 用关键字 virtual 修饰的方法,叫虚方法。可以在子类中用override 声明同名的方法,这叫“重写”。相应的没有用virtual修饰的方法,我们叫它实方法。重写会改变父类方法的功能。看下面演示代码: #region 重写 public class C1{ public virtual  阅读全文

posted @ 2019-07-30 16:43 禅道 阅读(350) 评论(0) 推荐(0) 编辑

virtual与override的使用
摘要:在函数的声明中,当有“virtual”修饰的时候,和没有virtual有什么区别呢?最重要的一点就是调用实例的函数是在编译的时候确定还是在运行的时候确定,virtual函数是在运行的时候来确定具体调用哪个类。这个特性是和父子类继承息息相关的。 这儿有个例子,在网上很多地方被转载,我稍微扩展了一下: 阅读全文

posted @ 2019-07-30 15:12 禅道 阅读(1283) 评论(0) 推荐(0) 编辑

写文章 通俗易懂 悲观锁、乐观锁、可重入锁、自旋锁、偏向锁、轻量/重量级锁、读写锁、各种锁及其Java实现!
摘要:网上关于Java中锁的话题可以说资料相当丰富,但相关内容总感觉是一大串术语的罗列,让人云里雾里,读完就忘。本文希望能为Java新人做一篇通俗易懂的整合,旨在消除对各种各样锁的术语的恐惧感,对每种锁的底层实现浅尝辄止,但是在需要时能够知道去查什么。 首先要打消一种想法,就是一个锁只能属于一种分类。其实 阅读全文

posted @ 2019-07-22 17:26 禅道 阅读(377) 评论(0) 推荐(1) 编辑

SpinWait
摘要:其实SpinWait的code 非常简单,以前看过很多遍,但是从来都没有整理过,整理也是再次学习吧。 我们先看看SpinWait的一些评论或者注意点吧:如果等待某个条件满足需要的时间很短,而且不希望发生昂贵的上下文切换,那么基于自旋的等待是一种很好的替换方案,SpinWait不仅提供了基本自旋功能, 阅读全文

posted @ 2019-07-11 10:07 禅道 阅读(1919) 评论(0) 推荐(0) 编辑

单机限流
摘要:【转载】https://www.jianshu.com/p/d9504fc0af4d 前言 在实际项目中,曾经遭遇过线上5W+QPS的峰值,也在压测状态下经历过10W+QPS的大流量请求,本篇博客的话题主要就是自己对高并发流量控制的一点思考。 应对大流量的一些思路 首先,我们来说一下什么是大流量? 阅读全文

posted @ 2019-07-10 14:07 禅道 阅读(492) 评论(0) 推荐(0) 编辑

关于高并发下多线程数据处理
摘要:一、Lock: C#中关键字lock(VB.NET中SyncLock,等同于try+finally的Monitor.Enter……Monitor.Exit)。原理是“每次线程进入后锁住当前所有的内存区块等相关区域,由该线程自行处理完毕全部的线程后自动释放”,接着其余线程抢先进入。 优点:最为大众所知 阅读全文

posted @ 2019-07-10 10:05 禅道 阅读(2407) 评论(0) 推荐(0) 编辑

Interlocked
摘要:Interlocked MSDN 描述:为多个线程共享的变量提供原子操作。主要函数如下: Interlocked.Increment 原子操作,递增指定变量的值并存储结果。Interlocked.Decrement 原子操作,递减指定变量的值并存储结果。Interlocked.Add 原子操作,添加 阅读全文

posted @ 2019-07-09 18:16 禅道 阅读(3246) 评论(0) 推荐(0) 编辑

导航

点击右上角即可分享
微信分享提示