资讯

Published 2019年11月04日 at 706 × 947 in 无锁队列的实现 ← Previous / (转载本站文章请注明作者和出处 酷 壳 – CoolShell ,请勿用于任何商业用途) ...
我们同样可以用这种方式来取得整个对象实例的内存布局。因为这些东西在内存中都是连续分布的,我们只需要使用适当的地址偏移量,我们就可以获得整个内存对象的布局。 本篇文章中的例程或内存布局主要使用如下编译器和系统: 1)Windows XP 和 VC++ 2003 2)Cygwin 和 G++ 3.4.4 单一的一般继承 下面 ...
Go语方的类型检查 因为Go语言目前并不支持真正的泛型,所以,只能用 interface{} 这样的类似于 void* 这种过度泛型来玩这就导致了我们在实际过程中就需要进行类型检查。Go语言的类型检查有两种技术,一种是 Type Assert,一种是Reflection。 Type Assert 这种技术,一般是对某个变量进行 .(type) 的转型操作 ...
这两天在网络上又有一个东西火了,Twitter 的创始人 @jack新的社交 iOS App Damus上苹果商店(第二天就因为违反中国法律在中国区下架了),这个软件是一个去中心化的 Twitter,使用到的是 nostr – Notes and Other Stuff Transmitted by Relays ...
这两天跟 Cali 和 Rather 做了一个线上的 Podcast – Ep.5 一起聊聊团队协同。主要是从 IM 工具扩展开来聊了一下团队的协同和相应的工具,但是聊天不是深度思考,有一些东西我没有讲透讲好,所以,我需要把我更多更完整更结构化的想法形成文字。(注:聊天聊地比较详细,本文只是想表达我的主要 ...
宏观管理 我发现很多人比较质疑远程工作的原因,更多的是表现在对宏观的管理上有问题。所以,我还是想先说一下宏观管理,这其实并不分远程办公还是集中式办公, 如果能够解决好些这管理上的根本问题,其实,远程不远程都无所谓了。只不过,这些问题在“远程办室”的场景更更突显罢了 ...
Channel 管理 当然,如果你要写出一个 泛型的pipeline框架 并不容易,而使用 Go Generation,但是,我们别忘了Go语言最具特色的 Go Routine 和 Channel 这两个神器完全也可以被我们用来构造这种编程。 Rob Pike在 Go Concurrency Patterns: Pipelines and cancellation ...
为什么要工程师文化 看看最近二十年来社会的发展,计算机和互联网已经渗透到了这个社会的每一个角落,各式各样的计算机技术成为了整个世界发展的强大引擎,各式各样的创新,无论是业务创新还是技术创新,都是依托于技术的快速演进,技术成了解放生产力提高社会运作的效率的中坚力量 ...
一个简单示例 我们还是先来看一个简单设计模式的Visitor的示例。 我们的代码中有一个 Visitor 的函数定义,还有一个 Shape 接口,其需要使用 Visitor 函数做为参数。 我们的实例的对象 Circle 和 Rectangle 实现了 Shape 的接口的 accept() 方法,这个方法就是等外面给我传递一个Visitor。
分享信息并不难,大多数人都能做到,就算是不善言谈性格内向的技术人员,通过博客或社交媒体,或是不正式的交流,他们都能或多或少的做到。但是如果你想要做一个有质量有高度的分享,这个就难了,所谓的有质量和有高度,我心里面的定义有两点:1)分享内容的保鲜期是很长的,2)会被大 ...
今天跟大家分享一个etcd的内存大量占用的问题,这是前段时间在我们开源软件Easegress中遇到的问题,问题是比较简单的,但是我还想把前因后果说一下,包括,为什么要用etcd,使用etcd的用户场景,包括etcd的一些导致内存占用比较大的设计,以及最后一些建议。希望这篇文章不仅仅只是让你看到了 ...
技术手段 下面是我经历过的几个手段: 1) 通过网络嗅探的方式。也就是说,你只要上了公司的网络,你个人设备上的通讯信息就可以被人以网络抓包+分析的方式进行分析。当然,这样的手段已经不怎么好用了,因为现在的网络基本上都是HTTPS加密的,网络嗅探的方式只能知道你访问了什么IP,对于 ...