01 2019 档案
发表于 2019-01-25 09:41阅读:514评论:0推荐:0
摘要:我们都知道Redis 是单线程的,那么如果单单是放一次以供查询,或者使用list追加放入以供查询,基本上没有太大的问题。但是如果说要根据原有的数据进行计算,怎么样保证数据的一致性,这个就是一个比较棘手的问题,比如平常我们看到的最多的就是抢红包。 模拟高并发操作redis数据我们假设用多线程去操作缓存
阅读全文 »
发表于 2019-01-18 16:04阅读:445评论:0推荐:0
摘要:一. 问题引入 通常,一个C语言学习者登堂入室的标志就是学会使用了指针,而成为高手的标志又是“玩转指针”。指针是如此奇妙,通过一个地址,可以指向一个数,结构体,对象,甚至函数。最后的一种函数,我们称之为“函数指针”(和“指针函数”可不一样!)就像如下的代码: int func(int x); /*
阅读全文 »
发表于 2019-01-17 12:32阅读:335评论:0推荐:0
摘要:在Invoke或者BeginInvoke的使用中无一例外地使用了委托Delegate 一、为什么Control类提供了Invoke和BeginInvoke机制? 关于这个问题的最主要的原因已经是dotnet程序员众所周知的,我在此费点笔墨再次记录到自己的日志,以便日后提醒一下自己。 1、window
阅读全文 »
发表于 2019-01-14 08:52阅读:180评论:0推荐:0
摘要:重点是第二种用法,需要深入的了解。 先看一个例子: mysql> explain select * from t_order; + + + + + + + + + + + | id | select_type | table | type | possible_keys | key | key_le
阅读全文 »
发表于 2019-01-11 13:46阅读:444评论:0推荐:0
摘要:其实SpinWait的code 非常简单,以前看过很多遍,但是从来都没有整理过,整理也是再次学习吧。 我们先看看SpinWait的一些评论或者注意点吧:如果等待某个条件满足需要的时间很短,而且不希望发生昂贵的上下文切换,那么基于自旋的等待是一种很好的替换方案,SpinWait不仅提供了基本自旋功能,
阅读全文 »
发表于 2019-01-07 19:43阅读:134评论:0推荐:0
摘要:await/async 是 ES7 最重要特性之一,它是目前为止 JS 最佳的异步解决方案了。虽然没有在 ES2016 中录入,但很快就到来,目前已经在 ES-Next Stage 4 阶段。 直接上例子,比如我们需要按顺序获取:产品数据=>用户数据=>评论数据 老朋友 Ajax 传统的写法,无需解
阅读全文 »
发表于 2019-01-03 16:29阅读:275评论:8推荐:0
摘要:ManualResetEvent是C#中一个比较常用的工具,可用于线程间通信,实现一种类似信号量的功能(不知道我这样描述是否恰当,有可能不是“类似”,而“就是”通过信号量来实现的,因为我也是最近才知道这个类,以前一直不知道,哈哈。如果有哪位清楚的话,请给我解惑。)。 先了解一下ManualReset
阅读全文 »
发表于 2019-01-03 16:22阅读:518评论:0推荐:0
摘要:行转列,列转行是我们在开发过程中经常碰到的问题。行转列一般通过CASE WHEN 语句来实现,也可以通过 SQL SERVER 2005 新增的运算符PIVOT来实现。用传统的方法,比较好理解。层次清晰,而且比较习惯。 但是PIVOT 、UNPIVOT提供的语法比一系列复杂的SELECT...CAS
阅读全文 »