- 【显示 后台运行 & 的命令】
晨春计
debuglinux服务器运维
目录背景步骤详解示例背景当你在Linuxshell中使用&符号将一个命令放到后台运行时,你可以使用jobs命令来查看这些后台进程的状态。但是,jobs命令并不会直接显示进程的PID(进程ID)。它会显示一个作业列表,其中包括每个作业的状态和一个作业标识符(通常是百分号%后面跟着一个数字),但不会直接显示PID。获取后台进程的PID步骤:1、使用jobs命令查看后台作业。2、使用ps命令配合grep
- 汤臣倍健,三七互娱,得物,顺丰,快手,游卡,oppo,康冠科技,途游游戏,埃科光电25秋招内推
2401_86288678
c语言python算法前端java
汤臣倍健,三七互娱,得物,顺丰,快手,游卡,oppo,康冠科技,途游游戏,埃科光电25秋招内推①得物【八大职类】技术、供应链、产品、运营、设计、职能、商品研究、风控等大类【内推码】RTHEA59【一键内推】https://poizon.jobs.feishu.cn/s/iMo1482J②汤臣倍健【招聘岗位】营销类、市场类、智造类、职能类【内推链接】https://sourl.cn/giXCGq【内
- 汤臣倍健,三七互娱,得物,顺丰,快手,游卡,oppo,康冠科技,途游游戏,埃科光电25秋招内推
2401_86288678
python游戏c++前端算法
汤臣倍健,三七互娱,得物,顺丰,快手,游卡,oppo,康冠科技,途游游戏,埃科光电25秋招内推①得物【八大职类】技术、供应链、产品、运营、设计、职能、商品研究、风控等大类【内推码】RTHEA59【一键内推】https://poizon.jobs.feishu.cn/s/iMo1482J②汤臣倍健【招聘岗位】营销类、市场类、智造类、职能类【内推链接】https://sourl.cn/giXCGq【内
- 6/13SteveJobs…Day45-School-translatation
Serenaliu85
在木头做的柜台前,破烂的夹子里装满了厚厚的商品目录册,人们会为了开关,电阻器,电容器商品讨价还价,有时为了最新的记忆芯片还价。他的爸爸过去为了汽车配件常做那样的事,并且他成功地还低价格因为他比售货员还了解每个产品的价值。乔布斯也向父亲那样。他热衷于谈判并从中获得实惠,这也让他对电子零件有了更充分的了解。他会去电子产品跳蚤市场,比如SanJose交换大会,找到含有一些价值芯片的旧线路板或者零部件和卖
- python apscheduler、任务可以是死循环吗_flask_apscheduler 定时任务踩坑记录
weixin_39564605
pythonapscheduler任务可以是死循环吗
背景由于需要再flask做一个定时任务,然后发现了这个库flask_apscheduler.使用很简单,就是可能由于某种情况,会有一些意外,下面是我的使用记录。首先按照官方文档跑一个示例fromflaskimportFlaskfromflask_apschedulerimportAPSchedulerclassConfig(object):JOBS=[{'id':'job1','func':'jo
- 如何让linux程序在后台执行
红色心脏
面试题合集linux运维服务器面试
怎么让linux程序在后台执行:一、在命令末尾添加“&”符号例如,要运行一个名为my_program的程序并让它在后台执行,可以这样做:my_program&执行这个命令后,程序会在后台运行,终端会立即返回提示符,你可以继续在终端中输入其他命令。你可以通过jobs命令查看当前终端会话中的后台作业,通过fg命令将后台作业调回前台继续运行。二、使用nohup命令nohup(nohangup)的意思是不
- Android中的线程(一)
川峰
Android知识笔记android多线程线程安全线程池线程通信
本文主要是对Android当中的线程相关的知识进行复习和总结。文章目录newThreadAsyncTaskHandlerThreadIntentServiceJobIntentServiceJobSchedulerWorkManager线程中断守护线程线程优先级线程状态线程池线程安全线程通信kotlin协程newThread缺乏统一管理,无限制创建,可能占用过多系统资源导致死机或oom,不推荐。A
- Spark的Web界面
静听山水
Sparkspark
http://localhost:4040/jobs/在顶部导航栏上,可以点击以下选项来查看不同类型的Spark应用信息:Jobs-此视图将列出所有已提交的作业,并提供每个作业的详细信息,如作业ID、名称、开始时间、结束时间等。Stages-此视图可以查看作业分解成的不同阶段,包括每个阶段的任务数、当前状态等。Storage-此视图展示了数据如何在RDDs(弹性分布式数据集)之间进行分层存储,以及
- Quartz .Net 配置以及Job使用依赖注入
FuSh1
.NetCorec#
使用扩展函数的方式在“Util”中进行配置,在WebHost/Host中进行使用。Util中的配置操作在Host中进行使用Host中的DefaultJobFactory以及QuartzJobUtil中的配置操作publicstaticIServiceCollectionConfigureQuartz(thisIServiceCollectioncollection,Listjobs,IJobFac
- react+Typescript利用useState定义两层(多层)数组对象并进行赋值,以及如何在组件中map循环取数据渲染?
定位算法工程师
react.jstypescript前端
前言在实际应用中,很多时候组件时嵌套关系,而react中组件中取数据只能取一层,但要定义多个数组对象又显得比较麻烦,后端可能为此多写几个接口。因此,在搭好组件框架后,我们可以先定义好数据结构,多层包裹数组对象,这样后端按我们定义好的数据结构写一个接口即可。1.多层数组对象如何定义以两层为例,代码如下(示例)://内层(第一层)的类型typeJobinfo={JobType:string;JobSt
- [Economist] 90 亿美元的云端服务(上)
Prongs
Cloud$9bn90亿美元的云端服务Anotherunicorngoespublic另一家独角兽公司上市DREWHOUSTONandArashFerdowsimusthavefewregretssincetheyturneddownanofferfortheirstartupfromApple’sthenboss,SteveJobs,in2011.Dropboxhasn’tdonetoobadl
- 进程和计划任务管理
最新小梦
linux运维服务器
目录查看进程程序进程控制进程pstree命令——查看进程树空格+&表示后台执行正在执行的进程任务转为后台暂停CTRL+Zjobs-l查看后台任务的先后排序bg后台进程顺序id,在后台继续运行fg后台进程顺序id,调回前台运行终止任务at一次性任务设置crontab周期性任务设置查看进程程序保存在硬盘、光盘等介质中的可执行代码和数据静态保存的代码进程在CPU及内存中运行的程序代码动态执行的代码父、子
- 浙大 | PTA 自测-5 Shuffling Machine (20分)
赞美_太阳!
数据结构-起步能力自测c语言oj系统
Shufflingisaprocedureusedtorandomizeadeckofplayingcards.Becausestandardshufflingtechniquesareseenasweak,andinordertoavoid“insidejobs”whereemployeescollaboratewithgamblersbyperforminginadequateshuffles
- PAT自测-5 Shuffling Machine
weixin_30655219
原题连接https://pta.patest.cn/pta/test/17/exam/4/question/264Shufflingisaprocedureusedtorandomizeadeckofplayingcards.Becausestandardshufflingtechniquesareseenasweak,andinordertoavoid"insidejobs"whereemplo
- PTA 自测-5 Shuffling Machine
byakki
python实战
Shufflingisaprocedureusedtorandomizeadeckofplayingcards.Becausestandardshufflingtechniquesareseenasweak,andinordertoavoid“insidejobs”whereemployeescollaboratewithgamblersbyperforminginadequateshuffles
- PTA 自测-5 Shuffling Machine(DS)
acDream_
●算法很美
自测-5ShufflingMachine(20分)Shufflingisaprocedureusedtorandomizeadeckofplayingcards.Becausestandardshufflingtechniquesareseenasweak,andinordertoavoid"insidejobs"whereemployeescollaboratewithgamblersbyper
- PTA 自测-5 Shuffling Machine (20 分) c语言
扶栏笑看花满园
PTA题目
Shufflingisaprocedureusedtorandomizeadeckofplayingcards.Becausestandardshufflingtechniquesareseenasweak,andinordertoavoid"insidejobs"whereemployeescollaboratewithgamblersbyperforminginadequateshuffles
- 自测-5 Shuffling Machine【PTA】
绯樱殇雪
PTApat考试c++
文章目录题目输入格式输出格式输入样例输出样例其它要求题解解题思路完整代码编程练习题目集目录题目 Shufflingisaprocedureusedtorandomizeadeckofplayingcards.Becausestandardshufflingtechniquesareseenasweak,andinordertoavoid“insidejobs”whereemployeescoll
- thinkphp:数据库多条件查询
25号底片~
thinkphp数据库数据库oraclesql
一、使用if条件限制查询条件$query=Db::table('wip_operation_plan')->alias('d')->join(['wip_jobs_all'=>'a'],'a.wip_entity_name=d.wip_entity_name')->join(['sf_item_no'=>'c'],'a.primary_item=c.item_no')->field('d.*,c.
- Ruby On Rails: 多并发delayed_jobs场景
solinger
RubyonRailsRubyOnRailsRubydelayed_jobs
在实际的生产场景中,我们通常会需要多个delayed_job去并发的处理不同类型的任务。若某种任务较多,则可以有多个delayed_job去处理。例如:我们有以下几种任务队列:queue_aqueue_bqueue_cqueue_d就任务数量和处理任务所消耗的时间来说,queue_a的任务最多,queue_b次之,queue_c和queue_d的任务量的总和和queue_b相当。则我们计划:两个d
- GitHub Actions CI/CD
zmzhou_star
GitHubAction是GitHub于2019年11月正式推出的一个CI/CD服务。GitHubAction基本概念workflow(工作流程):持续集成一次运行的过程,就是一个workflow。job(任务):一个workflow由一个或多个jobs构成,含义是一次持续集成的运行,可以完成多个任务。step(步骤):每个job由多个step构成,一步步完成。action(动作):每个step可
- 探索分布式定时任务的新境界:Dcron - 轻盈而稳健的守护者
邬稳研Beneficient
探索分布式定时任务的新境界:Dcron-轻盈而稳健的守护者dcron轻量分布式定时任务库alightweightdistributedjobschedulerlibrary项目地址:https://gitcode.com/gh_mirrors/dc/dcron项目介绍在现代分布式架构中,处理定时任务常常伴随着挑战:如何确保任务的准确执行,以及在集群环境下的高效协调?Dcron正是为此应运而生——一
- Linux jobs命令:查看当前终端放入后台的工作
fafadsj666
linux数据库大数据数据挖掘机器学习
jobs命令可以用来查看当前终端放入后台的工作,工作管理的名字也来源于jobs命令。jobs命令的基本格式如下:[root@localhost~]#jobs[选项]表1罗列了jobs命令常用的选项及含义。表1jobs命令常用选项及含义、选项含义-l(L的小写)列出进程的PID号。-n只列出上次发出通知后改变了状态的进程。-p只列出进程的PID号。-r只列出运行中的进程。-s只列出已停止的进程。例如
- Jenkins 定时触发策略
计算衎
jenkinsservlet前端
每天晚上11点执行一次,可以按照以下步骤进行。复制代码importjenkinsimportdatetimeimportbase64USERNAME=b'UFNXssaaX0NU\n'PASSWORD=b'UFNXXssdds0Nd'classJenkinsMonitor:def__init__(self,jobs_to_monitor):self.jenkins_url="http://pe-d
- k8s笔记——资源对象
怪我冷i
golang从入门到入门云原生kubernetes
以下列举的内容都是Kubernetes中的对象(Object),这些对象都可以在YAML文件中作为一种API类型来配置。PodNodeNamespaceServiceVolumePersistentVolumeDeploymentSecretStatefulSetDaemonSetServiceAccountReplicationControllerReplicaSetJobCronJobSecu
- go的Job Scheduling
~kiss~
gogolang开发语言后端
背景司内线上服务有很多异步脚本,大量冗余代码,管理很不方便急需一个美丽的框架,让代码变得美好包gogetgithub.com/go-co-op/gocron/v2介绍gocronisajobschedulingpackagewhichletsyourunGofunctionsatpre-determinedintervals.概念JobJob封装(encapsulates)一个“任务task”,它
- java仿写线程池
batcat560
并发编程面试题JVMjava开发语言
线程池的作用避免频繁的创建和销毁线程。对线程进行管理,避免无休止的消耗系统的资源,而造成系统崩溃。线程池接口定义一个线程池接口:规定好线程池的5个基本方法。publicinterfaceThreadPool{voidexecute(Jobjob);voidshutdown();voidaddWorks(intnum);voidremoveWorks(intnum);intgetJobSize();
- 2023年收入最高的10种编程语言之6-10名
qintian0225
swiftphprustkotlintypescript
以下均来自相关资料,不代表任何个人观点。根据DevJobsScanner对2023年编程语言市场的分析,以下是收入最高的10种编程语言之6-10名:第十名--PHPPHP是一种广泛用于Web开发的服务器端脚本语言。PHP开发人员的平均年薪约为7.5万美元。第九名--TypeScriptTypeScript是JavaScript的一个超集,添加了静态类型检查等特性,提高了代码的可维护性和可读性。Ty
- 【YARN】【Apache Hadoop YARN】【架构】
资源存储库
apachehadoop大数据
ThefundamentalideaofYARNistosplitupthefunctionalitiesofresourcemanagementandjobscheduling/monitoringintoseparatedaemons.TheideaistohaveaglobalResourceManager(RM)andper-applicationApplicationMaster(AM)
- LeetCode——1723. 完成所有工作的最短时间(Find Minimum Time to Finish All Jobs)[困难]——分析及代码(Java)
江南土豆
数据结构与算法LeetCodeJava题解
LeetCode——1723.完成所有工作的最短时间[FindMinimumTimetoFinishAllJobs][困难]——分析及代码[Java]一、题目二、分析及代码1.二分+回溯+剪枝(1)思路(2)代码(3)结果三、其他一、题目给你一个整数数组jobs,其中jobs[i]是完成第i项工作要花费的时间。请你将这些工作分配给k位工人。所有工作都应该分配给工人,且每项工作只能分配给一位工人。工
- ASM系列六 利用TreeApi 添加和移除类成员
lijingyao8206
jvm动态代理ASM字节码技术TreeAPI
同生成的做法一样,添加和移除类成员只要去修改fields和methods中的元素即可。这里我们拿一个简单的类做例子,下面这个Task类,我们来移除isNeedRemove方法,并且添加一个int 类型的addedField属性。
package asm.core;
/**
* Created by yunshen.ljy on 2015/6/
- Springmvc-权限设计
bee1314
springWebjsp
万丈高楼平地起。
权限管理对于管理系统而言已经是标配中的标配了吧,对于我等俗人更是不能免俗。同时就目前的项目状况而言,我们还不需要那么高大上的开源的解决方案,如Spring Security,Shiro。小伙伴一致决定我们还是从基本的功能迭代起来吧。
目标:
1.实现权限的管理(CRUD)
2.实现部门管理 (CRUD)
3.实现人员的管理 (CRUD)
4.实现部门和权限
- 算法竞赛入门经典(第二版)第2章习题
CrazyMizzz
c算法
2.4.1 输出技巧
#include <stdio.h>
int
main()
{
int i, n;
scanf("%d", &n);
for (i = 1; i <= n; i++)
printf("%d\n", i);
return 0;
}
习题2-2 水仙花数(daffodil
- struts2中jsp自动跳转到Action
麦田的设计者
jspwebxmlstruts2自动跳转
1、在struts2的开发中,经常需要用户点击网页后就直接跳转到一个Action,执行Action里面的方法,利用mvc分层思想执行相应操作在界面上得到动态数据。毕竟用户不可能在地址栏里输入一个Action(不是专业人士)
2、<jsp:forward page="xxx.action" /> ,这个标签可以实现跳转,page的路径是相对地址,不同与jsp和j
- php 操作webservice实例
IT独行者
PHPwebservice
首先大家要简单了解了何谓webservice,接下来就做两个非常简单的例子,webservice还是逃不开server端与client端。我测试的环境为:apache2.2.11 php5.2.10做这个测试之前,要确认你的php配置文件中已经将soap扩展打开,即extension=php_soap.dll;
OK 现在我们来体验webservice
//server端 serve
- Windows下使用Vagrant安装linux系统
_wy_
windowsvagrant
准备工作:
下载安装 VirtualBox :https://www.virtualbox.org/
下载安装 Vagrant :http://www.vagrantup.com/
下载需要使用的 box :
官方提供的范例:http://files.vagrantup.com/precise32.box
还可以在 http://www.vagrantbox.es/
- 更改linux的文件拥有者及用户组(chown和chgrp)
无量
clinuxchgrpchown
本文(转)
http://blog.163.com/yanenshun@126/blog/static/128388169201203011157308/
http://ydlmlh.iteye.com/blog/1435157
一、基本使用:
使用chown命令可以修改文件或目录所属的用户:
命令
- linux下抓包工具
矮蛋蛋
linux
原文地址:
http://blog.chinaunix.net/uid-23670869-id-2610683.html
tcpdump -nn -vv -X udp port 8888
上面命令是抓取udp包、端口为8888
netstat -tln 命令是用来查看linux的端口使用情况
13 . 列出所有的网络连接
lsof -i
14. 列出所有tcp 网络连接信息
l
- 我觉得mybatis是垃圾!:“每一个用mybatis的男纸,你伤不起”
alafqq
mybatis
最近看了
每一个用mybatis的男纸,你伤不起
原文地址 :http://www.iteye.com/topic/1073938
发表一下个人看法。欢迎大神拍砖;
个人一直使用的是Ibatis框架,公司对其进行过小小的改良;
最近换了公司,要使用新的框架。听说mybatis不错;就对其进行了部分的研究;
发现多了一个mapper层;个人感觉就是个dao;
- 解决java数据交换之谜
百合不是茶
数据交换
交换两个数字的方法有以下三种 ,其中第一种最常用
/*
输出最小的一个数
*/
public class jiaohuan1 {
public static void main(String[] args) {
int a =4;
int b = 3;
if(a<b){
// 第一种交换方式
int tmep =
- 渐变显示
bijian1013
JavaScript
<style type="text/css">
#wxf {
FILTER: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=#ffffff, EndColorStr=#97FF98);
height: 25px;
}
</style>
- 探索JUnit4扩展:断言语法assertThat
bijian1013
java单元测试assertThat
一.概述
JUnit 设计的目的就是有效地抓住编程人员写代码的意图,然后快速检查他们的代码是否与他们的意图相匹配。 JUnit 发展至今,版本不停的翻新,但是所有版本都一致致力于解决一个问题,那就是如何发现编程人员的代码意图,并且如何使得编程人员更加容易地表达他们的代码意图。JUnit 4.4 也是为了如何能够
- 【Gson三】Gson解析{"data":{"IM":["MSN","QQ","Gtalk"]}}
bit1129
gson
如何把如下简单的JSON字符串反序列化为Java的POJO对象?
{"data":{"IM":["MSN","QQ","Gtalk"]}}
下面的POJO类Model无法完成正确的解析:
import com.google.gson.Gson;
- 【Kafka九】Kafka High Level API vs. Low Level API
bit1129
kafka
1. Kafka提供了两种Consumer API
High Level Consumer API
Low Level Consumer API(Kafka诡异的称之为Simple Consumer API,实际上非常复杂)
在选用哪种Consumer API时,首先要弄清楚这两种API的工作原理,能做什么不能做什么,能做的话怎么做的以及用的时候,有哪些可能的问题
- 在nginx中集成lua脚本:添加自定义Http头,封IP等
ronin47
nginx lua
Lua是一个可以嵌入到Nginx配置文件中的动态脚本语言,从而可以在Nginx请求处理的任何阶段执行各种Lua代码。刚开始我们只是用Lua 把请求路由到后端服务器,但是它对我们架构的作用超出了我们的预期。下面就讲讲我们所做的工作。 强制搜索引擎只索引mixlr.com
Google把子域名当作完全独立的网站,我们不希望爬虫抓取子域名的页面,降低我们的Page rank。
location /{
- java-归并排序
bylijinnan
java
import java.util.Arrays;
public class MergeSort {
public static void main(String[] args) {
int[] a={20,1,3,8,5,9,4,25};
mergeSort(a,0,a.length-1);
System.out.println(Arrays.to
- Netty源码学习-CompositeChannelBuffer
bylijinnan
javanetty
CompositeChannelBuffer体现了Netty的“Transparent Zero Copy”
查看API(
http://docs.jboss.org/netty/3.2/api/org/jboss/netty/buffer/package-summary.html#package_description)
可以看到,所谓“Transparent Zero Copy”是通
- Android中给Activity添加返回键
hotsunshine
Activity
// this need android:minSdkVersion="11"
getActionBar().setDisplayHomeAsUpEnabled(true);
@Override
public boolean onOptionsItemSelected(MenuItem item) {
- 静态页面传参
ctrain
静态
$(document).ready(function () {
var request = {
QueryString :
function (val) {
var uri = window.location.search;
var re = new RegExp("" + val + "=([^&?]*)", &
- Windows中查找某个目录下的所有文件中包含某个字符串的命令
daizj
windows查找某个目录下的所有文件包含某个字符串
findstr可以完成这个工作。
[html]
view plain
copy
>findstr /s /i "string" *.*
上面的命令表示,当前目录以及当前目录的所有子目录下的所有文件中查找"string&qu
- 改善程序代码质量的一些技巧
dcj3sjt126com
编程PHP重构
有很多理由都能说明为什么我们应该写出清晰、可读性好的程序。最重要的一点,程序你只写一次,但以后会无数次的阅读。当你第二天回头来看你的代码 时,你就要开始阅读它了。当你把代码拿给其他人看时,他必须阅读你的代码。因此,在编写时多花一点时间,你会在阅读它时节省大量的时间。让我们看一些基本的编程技巧: 尽量保持方法简短 尽管很多人都遵
- SharedPreferences对数据的存储
dcj3sjt126com
SharedPreferences简介: &nbs
- linux复习笔记之bash shell (2) bash基础
eksliang
bashbash shell
转载请出自出处:
http://eksliang.iteye.com/blog/2104329
1.影响显示结果的语系变量(locale)
1.1locale这个命令就是查看当前系统支持多少种语系,命令使用如下:
[root@localhost shell]# locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
- Android零碎知识总结
gqdy365
android
1、CopyOnWriteArrayList add(E) 和remove(int index)都是对新的数组进行修改和新增。所以在多线程操作时不会出现java.util.ConcurrentModificationException错误。
所以最后得出结论:CopyOnWriteArrayList适合使用在读操作远远大于写操作的场景里,比如缓存。发生修改时候做copy,新老版本分离,保证读的高
- HoverTree.Model.ArticleSelect类的作用
hvt
Web.netC#hovertreeasp.net
ArticleSelect类在命名空间HoverTree.Model中可以认为是文章查询条件类,用于存放查询文章时的条件,例如HvtId就是文章的id。HvtIsShow就是文章的显示属性,当为-1是,该条件不产生作用,当为0时,查询不公开显示的文章,当为1时查询公开显示的文章。HvtIsHome则为是否在首页显示。HoverTree系统源码完全开放,开发环境为Visual Studio 2013
- PHP 判断是否使用代理 PHP Proxy Detector
天梯梦
proxy
1. php 类
I found this class looking for something else actually but I remembered I needed some while ago something similar and I never found one. I'm sure it will help a lot of developers who try to
- apache的math库中的回归——regression(翻译)
lvdccyb
Mathapache
这个Math库,虽然不向weka那样专业的ML库,但是用户友好,易用。
多元线性回归,协方差和相关性(皮尔逊和斯皮尔曼),分布测试(假设检验,t,卡方,G),统计。
数学库中还包含,Cholesky,LU,SVD,QR,特征根分解,真不错。
基本覆盖了:线代,统计,矩阵,
最优化理论
曲线拟合
常微分方程
遗传算法(GA),
还有3维的运算。。。
- 基础数据结构和算法十三:Undirected Graphs (2)
sunwinner
Algorithm
Design pattern for graph processing.
Since we consider a large number of graph-processing algorithms, our initial design goal is to decouple our implementations from the graph representation
- 云计算平台最重要的五项技术
sumapp
云计算云平台智城云
云计算平台最重要的五项技术
1、云服务器
云服务器提供简单高效,处理能力可弹性伸缩的计算服务,支持国内领先的云计算技术和大规模分布存储技术,使您的系统更稳定、数据更安全、传输更快速、部署更灵活。
特性
机型丰富
通过高性能服务器虚拟化为云服务器,提供丰富配置类型虚拟机,极大简化数据存储、数据库搭建、web服务器搭建等工作;
仅需要几分钟,根据CP
- 《京东技术解密》有奖试读获奖名单公布
ITeye管理员
活动
ITeye携手博文视点举办的12月技术图书有奖试读活动已圆满结束,非常感谢广大用户对本次活动的关注与参与。
12月试读活动回顾:
http://webmaster.iteye.com/blog/2164754
本次技术图书试读活动获奖名单及相应作品如下:
一等奖(两名)
Microhardest:http://microhardest.ite