经常在办公室评价别人, 会以折腾精神来评价, 那家伙不错, 挺会折腾的. 这家伙一般, 不爱折腾. 作为理工科出生, 折腾一定程度上代表了动手能力, 解决问题能力, 甚至于直接上升到工作能力.

经常在办公室评价别人, 会以折腾精神来评价, 那家伙不错, 挺会折腾的. 这家伙一般, 不爱折腾. 作为理工科出生, 折腾一定程度上代表了动手能力, 解决问题能力, 甚至于直接上升到工作能力.
当绑定一个函数, 然后这个函数会在别的地方回调的时候,会丢失上下文的信息,这个时候,我们就要使用bind函数, 将这个上下文绑定到这个函数里面
stRes: STRes = {
reName: {
list: "users",
total: 'pageinfo.count'
},
// 这个函数, 会在内部被调用, 这个时候一定要绑定this, 否者这个this, 就会是奇怪的东西
process: this.resprocess.bind(this)
};
resprocess(data: STData[], rawData?: any) {
for(let index in data) {
data[index]['image'] =this.userimage(data[index]['image']);
}
return data;
}
最近重构行情服务端的框架,其中有一部分就是重写mysql线程池,线程池是一个很独立的东西,今天就拿出来给大家分享, 怎样设计一个线程池, 以及我是怎么做的.
常见的线程池使用场景分为两种
这个很好理解, 当程序需要大量计算, 单核CPU跑到100%, 这个时候可以将计算任务分解, 分多个线程计算, 如果我们有4核, 那这个时候我们可以跑到400%, 理想情况下, 可以节省3倍的时间. 当然这个不是绝对的, 具体情况要具体分析. 总而言之, 是为了让程序充分打满CPU.
如果这个是web程序, 异步绝对是提高并发的神器. 在我们的C++服务器中, 也会有大量的阻塞任务, 可能是读取mysql, 可能是读取mongodb, 或者任意需要同步等待完成的事情, 那么在等待的时候, 我们的工作线程是完全没法做别的工作的, 这个时候我们就把等待的过程, 变成一个任务, 让线程池去做, 主线程继续处理别的工作, 等线程池完成之后, 再接管任务, 继续往下面执行.
前几天开除一个下属, 称他为A吧, 理由是负责的项目发生太多线上事故, 工作将近一年,产出太少. 做出这个决定是艰难的,意味着一年对他的培养付诸流水. 不仅是对A的一种伤害, 对公司, 直属负责人, 都是不小的损失. A有太多的毛病, 其中最严重的就是懒. 懒所以不学习, 不学习就不会进步, 思虑不周, 导致线上问题频发. 因为懒所以进度慢, 进而没有产出. 所以,怎样才是一个合格的程序员呢?
这是个很泛的概念, 怎样才能称得上勤奋? 是加班到12点? 熬夜赶项目? 这个没有定论. 个人觉得勤奋是一种思想, 一种体现在行动上的思想.
继续阅读
sudo yum install pkg-config openssl-devel cyrus-sasl-devel
wget https://github.com/mongodb/mongo-c-driver/releases/download/1.8.0/mongo-c-driver-1.8.0.tar.gz
tar xzf mongo-c-driver-1.8.0.tar.gz
cd mongo-c-driver-1.8.0
./configure
make
sudo make install
wget https://github.com/mongodb/mongo-cxx-driver/archive/r3.0.1.tar.gz
tar xzf r3.0.1.tar.gz
cd mongo-cxx-driver-r3.0.1/build
#需要先安装好git,yum -y install git,不然会报错
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local/ ..
sudo make EP_mnmlstc_core
sudo make -j4
sudo make install
欢迎大家订阅雀观代码, 我将给你讲述, 中小企业程序员, 淘金路上的故事.