- python 多线程 无阻塞获取键盘按键
檐上走过的猫
编程小白python多线程无阻塞获取键盘按键刚开始学,不喜勿喷,谢谢importsysimportttyimporttermiosimportosimportthreadingdefreadchar():fd=sys.stdin.fileno()old_settings=termios.tcgetattr(fd)try:tty.setraw(sys.stdin.fileno())ch=sys.st
- python3多线程传参_python多线程 怎么传送多个参数
weixin_39808803
python3多线程传参
对于python来说,作为解释型语言,Python的解释器必须做到既安全又高效。我们都知道多线程编程会遇到的问题,解释器要留意的是避免在不同的线程操作内部共享的数据,同时它还要保证在管理用户线程时保证总是有最大化的计算资源。而python是通过使用全局解释器锁来保护数据的安全性:python代码的执行由python虚拟机来控制,即Python先把代码(.py文件)编译成字节码(字节码在Python
- python多线程并发加速
AI算法网奇
python宝典mysqlpython基础数据库
目录python多线程并发加速多线程例子打印线程号,进程号由于Python的全局解释器锁(GIL)限制,在CPU密集型任务中多线程的效果并不理想,但对于I/O密集型任务,多线程仍然是有效的。python多线程并发加速python多线程并发遍历数据库,然后查询历史记录,然后分析数据查询100ms,这时需要3分钟,加了并发处理后,需要1.2分钟后来数据库加了索引,需要6秒就可以了,总结:加索引能带来3
- python多线程
编程可可西里
python
python多线程1.线程的基础概念-线程:线程是程序执行的最小单位同属一个进程的多个线程共享进程所拥有所有资源一.线程的创建步骤1.导入线程模块importthreading2.通过线程类创建线程对象#线程对象=threading.Thread(target=任务名)thread=threading.Thread(target=work)3.启动线程执行任务#线程对象.start()thread
- Python多线程编程实例:处理多个事件及其子任务
Leuanghing
pythonthreading多线程
Python多线程编程实例:处理多个事件及其子任务一、前言二、整体架构流程三、技术细节四、完整代码五、运行六、结论一、前言在现代编程中,多线程编程是一种常用的技术,用于提高程序的执行效率和响应速度。通过并行执行多个任务,多线程可以有效地利用多核处理器的性能,减少程序的整体运行时间。本文通过一个具体的Python实例,展示了如何使用threading模块来并行处理多个事件及其子任务。二、整体架构流程
- python multiprocessing模块_Python multiprocessing模块
weixin_39646084
python
一、简介python多线程有个讨厌的限制,全局解释器锁(globalinterpreterlock),这个锁的意思是任一时间只能有一个线程使用解释器,跟单cpu跑多个程序一个意思,大家都是轮着用的,这叫“并发”,不是“并行”。手册上的解释是为了保证对象模型的正确性!这个锁造成的困扰是如果有一个计算密集型的线程占着cpu,其他的线程都得等着....,试想你的多个线程中有这么一个线程,得多悲剧,多线程
- 【python基础】python GIL(全局解释器锁) 和 多线程锁
shengnan_wsn
pythonpython开发语言后端
文章目录什么是GIL?有了GIL还需要线程锁吗?参考资料1:[终于有人把GIL全局解释器说清楚了](https://zhuanlan.zhihu.com/p/311877485)2:[浅谈Python多线程之GIL描述](https://blog.csdn.net/qq_34359754/article/details/115209158)3:[多线程锁机制](https://www.cnblog
- python多线程锁_python:线程,多线程锁,多线程递归锁
八亿中产
python多线程锁
#!usr/bin/envpython#-*-coding:utf-8-*-__author__="Samson"importthreading,timedefrun(n):print("task",n)time.sleep(2)print("currentthread:",threading.current_thread())#当前线程t_obj=[]#存线程实例start_time=time.
- python多线程锁实战_Python多线程锁
7Nut7
python多线程锁实战
在多线程程序执行过程中,为什么需要给一些线程加锁以及如何加锁,下面就来说一说。1.给线程加锁的原因我们知道,不同进程之间的内存空间数据是不能够共享的,试想一下,如果可以随意共享,谈何安全?但是一个进程中的多个线程是可以共享这个进程的内存空间中的数据的,比如多个线程可以同时调用某一内存空间中的某些数据(只是调用,没有做修改)。试想一下,在某一进程中,内存空间中存有一个变量对象的值为num=8,假如某
- python多线程的锁用法
hellenlee22
python
锁机制在了解锁机制前,我们先来看一下下面这个例子:##使用多线程进行加法运算importthreading#定义全局变量VALUEVALUE=0#定义加法线程函数defadd_value():globalVALUEforxinrange(1000000):VALUE+=1print('value=',VALUE)#定义两个线程并发执行加法操作defadd_thread_main():forxinr
- [Python | CS基础 ]Python多线程`threading`和多进程`multiprocessing`
向日葵花籽儿
python语法python数据库
多线程和多进程的Python实现1.多线程实现1.1原理Python的多线程模块**threading**允许程序并发执行多个任务。由于全局解释器锁(GIL),Python的线程可能无法实现真正的并行执行,适合I/O密集型任务。1.2示例代码importthreadingimporttime#定义线程要执行的函数defprint_numbers(threadName,delay):count=0w
- python多线程程序设计 之一
IT_Beijing_BIT
#Python程序设计语言python
python多线程程序设计之一全局解释器锁线程APIsthreading.active_count()threading.current_thread()threading.excepthook(args,/)threading.get_native_id()threading.main_thread()threading.stack_size([size])线程对象成员函数构造器start/ru
- Python多线程实现大规模数据集高效转移
sand&wich
网络python服务器
背景在处理大规模数据集时,通常需要在不同存储设备、不同服务器或文件夹之间高效地传输数据。如果采用单线程传输方式,当数据量非常大时,整个过程会非常耗时。因此,通过多线程并行处理可以大幅提升数据传输效率。本文将分享一个基于Python多线程实现的高效数据传输工具,通过遍历源文件夹中的所有文件,将它们移动到目标文件夹。工具和库这个数据集转移工具主要依赖于以下Python标准库:os:用于文件系统操作,如
- python多线程性能低_如何通过Python多线程提高性能
咯咯哦咯喔
python多线程性能低
我不熟悉Python和多线程,所以请耐心等待。在我正在编写一个脚本,通过信任网(weboftrust)处理列表中的域,这是一个按“可信程度”对网站进行排名的服务,并将它们写入CSV。不幸的是,WebofTrust的服务器可能需要相当长的时间来响应,而处理10万个域可能需要几个小时。在到目前为止,我在多线程处理方面的尝试令人失望——尝试从thisanswer修改脚本会产生线程错误,我相信是因为有些线
- 【Python】超详细实例讲解python多线程(threading模块)
猫猫不吃Sakana
#Python自动化python经验分享笔记pycharm
什么是多线程?线程(thread)是操作系统中能够进行运算的最小单位,包含于进程之中,一个进程可以有多个线程,这意味着一个进程中可以并发多个线程,即为多线程。对于一个python程序,如果需要同时大量处理多个任务,有使用多进程和多线程两种方法。在python中,实现多线程主要通过threading模块,而多进程主要通过multiprocessing模块。这两个模块的主要区别是:threading模
- Python实现多线程、多进程及协程
闲人编程
pythonpython开发语言多线程多进程协程并发异步
目录Python实现多线程、多进程及协程引言1.多线程(Threading)1.1多线程的基本概念1.2多线程的优点和缺点1.3Python多线程的实现2.多进程(Multiprocessing)2.1多进程的基本概念2.2多进程的优点和缺点2.3Python多进程的实现3.协程(Coroutine)3.1协程的基本概念3.2协程的优点和缺点3.3Python协程的实现4.三种并发模型的对比与选择
- python 多线程类报错:group argument must be None for now
略X3
python
AssertionError:groupargumentmustbeNonefornowpython多线程类报错解决方法:加入初始化进程类python多线程类报错解决方法:加入初始化进程类//AnhighlightedblockclassMyThread(Thread):def__init__(self,name):Thread.__init__(self)#初始化线程类self.name=nam
- python 多用户压力测试_python多线程http压力测试脚本
weixin_39672296
python多用户压力测试
#coding=utf-8importsysimporttimeimportthreadimporthttplib,urllibimportrandomimportuuidimportlogginglogging.basicConfig(level=logging.DEBUG,format='%(asctime)s%(filename)s[line:%(lineno)d]%(levelname)s
- Python 多线程并行执行详解
egzosn
java开发语言
在编程中,多线程是提高程序执行效率、利用多核处理器的重要技术之一。Python作为一门强大的编程语言,也提供了丰富的多线程支持。本文将详细介绍Python多线程并行执行的原理、方法、应用场景,并通过多个示例演示如何在Python中实现多线程编程。1.多线程基础概念什么是线程线程是操作系统能够进行调度的最小单位,一个进程可以包含一个或多个线程,每个线程共享进程的资源。多线程编程可以在单个进程中并行执
- Python多线程—threading模块详解
whoamilzq
PythonPython编程多线程
threading模块threading模块是Python支持的多线程编程的重要模块,该模块是在底层模块_thread的基础上开发的更高层次的多线程编程接口,提供了大量的方法和类来支持多线程编程。threading模块常用方法如下:方法功能说明threading.active_count()返回当前处于active状态的Thread对象threading.current_thread()返回当前T
- 【Python运行机制】全局解释器锁(GIL)
可口的冰可乐
Pythonpython开发语言
1.全局解释器锁(GIL)Python的全局解释器锁(GlobalInterpreterLock,GIL)是Python多线程编程中的一个关键特性。尽管GIL有时会限制多线程程序的性能,但它在Python内存管理和线程安全方面发挥了重要作用。1.1什么是GIL?全局解释器锁(GIL)是CPython(Python的主流实现)中的一个互斥锁,用于确保在任意时刻只有一个线程在执行Python字节码。这
- Python 多线程和多进程用法
SmallerFL
Python相关python服务器linux多进程多线程
文章目录1.Python多进程1.1常见用法1.创建进程2.进程池3.进程间通信4.进程同步1.2结合进度条显示2.Python多线程2.1常见用法1.使用线程池2.2结合进度条显示1.Python多进程1.1常见用法multiprocessing是Python标准库中的一个模块,用于在多核或多处理器环境中并行执行任务。它提供了一种便捷的方法来创建和管理多个进程,以实现并行计算。multiproc
- 【Python多线程简析】
Uncle 城
python算法数据结构青少年编程pygame
Python多线程简析Python多线程是指在一个程序中同时运行多个线程,以实现并发处理任务。线程是操作系统能够进行运算调度的最小单位,在Python中,多线程可以共享全局变量,一个进程可以包含多个线程,多线程可以实现并发执行。例如以下代码示例:importthreadingdefthread_task(name):print(f"Thread{name}isrunning")#创建线程my_th
- 简单的python多线程实例
weixin_30780649
python
今天抽时间又学了一下python的多线程,理解的又多了一些,为了利于理解,写了一段很简单的代码,如下:importthreadingfromtimeimportsleepdeftask1():#线程函数1foriinrange(0,9):print("iamthreadone!!")deftask2(name):#线程函数2print('hello{0}{1}'.format(name,'weiy
- Python面试题
生活需要深度
PythonPython面试
1、python多线程有个全局解释器锁(globalinterpreterlock),这个锁的意思是任一时间只能有一个线程使用解释器,跟单cpu跑多个程序一个意思,大家都是轮着用的,这叫“并发”,不是“并行”。多进程间共享数据,可以使用multiprocessing.Value和multiprocessing.Array。如果你的应用真的对性能有超级严格的要求,比如100us就对你的应用有很大影响
- 多线程、分布式运行用例
吃鱿鱼的大叔
自动化测试分布式selenium
python多线程threading模块多线程实例#-*-coding:utf-8-*-#@Time:2024/2/715:50#@Author:居里夫人吃橘子#@File:class01.py#@Software:PyCharmimportthreadingfromtimeimportsleepdefrun(name):print(name+'该起床了')sleep(2)print(name+'
- python多线程运行脚本模板——适用于多用户
Anyexyz
pythonwindows
本文首发于Anyeの小站,转载请取得作者同意。多用户执行python脚本的一种风格:account.csv.example:账户信息文件(示例),用于配置账户信息。main.py:主程序文件,用于完成学习任务。one_account.py:单账户执行所使用的程序,主算法内容均位于此文件。简单示例account.csv.exampleusername1,password1,notes1usernam
- Python多线程
互联网的猫
Python从入门到精通python
目录线程相关的知识进程线程主线程线程模块——threading创建子线程自定义函数实现线程体自定义线程类实现线程体线程管理等待线程结束编辑线程停止下载图片示例如果想让我们的程序同时执行多个任务,就需要使用多线程技术了。到目前为止,我们编写的程序都是单线程的,在运行时一次只能执行一个任务。线程相关的知识进程一个进程就是一个正在执行的程序,每一个进程都有自己独立的一块内存空间、一组系统资源。在进程的概
- 一文学会python多线程
11的雾
Python的multiprocessing模块是一个多进程模块,它允许你创建新的进程,就像你创建新的线程一样。Python的multiprocessing模块提供了一个Process类来代表一个进程对象。multiprocessing模块的API和threading模块非常相似,所以如果你熟悉线程的编程,那么你会发现使用multiprocessing模块创建多进程是很直观的。创建的新进程有自己的
- python 多线程下载mp4_Python多线程下载文件的方法
weixin_39761880
python多线程下载mp4
本文实例讲述了Python多线程下载文件的方法。分享给大家供大家参考。具体实现方法如下:importhttplibimporturllib2importtimefromthreadingimportThreadfromQueueimportQueuefromtimeimportsleepproxy='yourproxy';opener=urllib2.build_opener(urllib2.Pr
- 插入表主键冲突做更新
a-john
有以下场景:
用户下了一个订单,订单内的内容较多,且来自多表,首次下单的时候,内容可能会不全(部分内容不是必须,出现有些表根本就没有没有该订单的值)。在以后更改订单时,有些内容会更改,有些内容会新增。
问题:
如果在sql语句中执行update操作,在没有数据的表中会出错。如果在逻辑代码中先做查询,查询结果有做更新,没有做插入,这样会将代码复杂化。
解决:
mysql中提供了一个sql语
- Android xml资源文件中@、@android:type、@*、?、@+含义和区别
Cb123456
@+@?@*
一.@代表引用资源
1.引用自定义资源。格式:@[package:]type/name
android:text="@string/hello"
2.引用系统资源。格式:@android:type/name
android:textColor="@android:color/opaque_red"
- 数据结构的基本介绍
天子之骄
数据结构散列表树、图线性结构价格标签
数据结构的基本介绍
数据结构就是数据的组织形式,用一种提前设计好的框架去存取数据,以便更方便,高效的对数据进行增删查改。正确选择合适的数据结构,对软件程序的高效执行的影响作用不亚于算法的设计。此外,在计算机系统中数据结构的作用也是非同小可。例如常常在编程语言中听到的栈,堆等,就是经典的数据结构。
经典的数据结构大致如下:
一:线性数据结构
(1):列表
a
- 通过二维码开放平台的API快速生成二维码
一炮送你回车库
api
现在很多网站都有通过扫二维码用手机连接的功能,联图网(http://www.liantu.com/pingtai/)的二维码开放平台开放了一个生成二维码图片的Api,挺方便使用的。闲着无聊,写了个前台快速生成二维码的方法。
html代码如下:(二维码将生成在这div下)
? 1
&nbs
- ImageIO读取一张图片改变大小
3213213333332132
javaIOimageBufferedImage
package com.demo;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
/**
* @Description 读取一张图片改变大小
* @author FuJianyon
- myeclipse集成svn(一针见血)
7454103
eclipseSVNMyEclipse
&n
- 装箱与拆箱----autoboxing和unboxing
darkranger
J2SE
4.2 自动装箱和拆箱
基本数据(Primitive)类型的自动装箱(autoboxing)、拆箱(unboxing)是自J2SE 5.0开始提供的功能。虽然为您打包基本数据类型提供了方便,但提供方便的同时表示隐藏了细节,建议在能够区分基本数据类型与对象的差别时再使用。
4.2.1 autoboxing和unboxing
在Java中,所有要处理的东西几乎都是对象(Object)
- ajax传统的方式制作ajax
aijuans
Ajax
//这是前台的代码
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+
- 只用jre的eclipse是怎么编译java源文件的?
avords
javaeclipsejdktomcat
eclipse只需要jre就可以运行开发java程序了,也能自动 编译java源代码,但是jre不是java的运行环境么,难道jre中也带有编译工具? 还是eclipse自己实现的?谁能给解释一下呢问题补充:假设系统中没有安装jdk or jre,只在eclipse的目录中有一个jre,那么eclipse会采用该jre,问题是eclipse照样可以编译java源文件,为什么呢?
&nb
- 前端模块化
bee1314
模块化
背景: 前端JavaScript模块化,其实已经不是什么新鲜事了。但是很多的项目还没有真正的使用起来,还处于刀耕火种的野蛮生长阶段。 JavaScript一直缺乏有效的包管理机制,造成了大量的全局变量,大量的方法冲突。我们多么渴望有天能像Java(import),Python (import),Ruby(require)那样写代码。在没有包管理机制的年代,我们是怎么避免所
- 处理百万级以上的数据处理
bijian1013
oraclesql数据库大数据查询
一.处理百万级以上的数据提高查询速度的方法: 1.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。
2.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 o
- mac 卸载 java 1.7 或更高版本
征客丶
javaOS
卸载 java 1.7 或更高
sudo rm -rf /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
成功执行此命令后,还可以执行 java 与 javac 命令
sudo rm -rf /Library/PreferencePanes/JavaControlPanel.prefPane
成功执行此命令后,还可以执行 java
- 【Spark六十一】Spark Streaming结合Flume、Kafka进行日志分析
bit1129
Stream
第一步,Flume和Kakfa对接,Flume抓取日志,写到Kafka中
第二部,Spark Streaming读取Kafka中的数据,进行实时分析
本文首先使用Kakfa自带的消息处理(脚本)来获取消息,走通Flume和Kafka的对接 1. Flume配置
1. 下载Flume和Kafka集成的插件,下载地址:https://github.com/beyondj2ee/f
- Erlang vs TNSDL
bookjovi
erlang
TNSDL是Nokia内部用于开发电信交换软件的私有语言,是在SDL语言的基础上加以修改而成,TNSDL需翻译成C语言得以编译执行,TNSDL语言中实现了异步并行的特点,当然要完整实现异步并行还需要运行时动态库的支持,异步并行类似于Erlang的process(轻量级进程),TNSDL中则称之为hand,Erlang是基于vm(beam)开发,
- 非常希望有一个预防疲劳的java软件, 预防过劳死和眼睛疲劳,大家一起努力搞一个
ljy325
企业应用
非常希望有一个预防疲劳的java软件,我看新闻和网站,国防科技大学的科学家累死了,太疲劳,老是加班,不休息,经常吃药,吃药根本就没用,根本原因是疲劳过度。我以前做java,那会公司垃圾,老想赶快学习到东西跳槽离开,搞得超负荷,不明理。深圳做软件开发经常累死人,总有不明理的人,有个软件提醒限制很好,可以挽救很多人的生命。
相关新闻:
(1)IT行业成五大疾病重灾区:过劳死平均37.9岁
- 读《研磨设计模式》-代码笔记-原型模式
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
/**
* Effective Java 建议使用copy constructor or copy factory来代替clone()方法:
* 1.public Product copy(Product p){}
* 2.publi
- 配置管理---svn工具之权限配置
chenyu19891124
SVN
今天花了大半天的功夫,终于弄懂svn权限配置。下面是今天收获的战绩。
安装完svn后就是在svn中建立版本库,比如我本地的是版本库路径是C:\Repositories\pepos。pepos是我的版本库。在pepos的目录结构
pepos
component
webapps
在conf里面的auth里赋予的权限配置为
[groups]
- 浅谈程序员的数学修养
comsci
设计模式编程算法面试招聘
浅谈程序员的数学修养
- 批量执行 bulk collect与forall用法
daizj
oraclesqlbulk collectforall
BULK COLLECT 子句会批量检索结果,即一次性将结果集绑定到一个集合变量中,并从SQL引擎发送到PL/SQL引擎。通常可以在SELECT INTO、
FETCH INTO以及RETURNING INTO子句中使用BULK COLLECT。本文将逐一描述BULK COLLECT在这几种情形下的用法。
有关FORALL语句的用法请参考:批量SQL之 F
- Linux下使用rsync最快速删除海量文件的方法
dongwei_6688
OS
1、先安装rsync:yum install rsync
2、建立一个空的文件夹:mkdir /tmp/test
3、用rsync删除目标目录:rsync --delete-before -a -H -v --progress --stats /tmp/test/ log/这样我们要删除的log目录就会被清空了,删除的速度会非常快。rsync实际上用的是替换原理,处理数十万个文件也是秒删。
- Yii CModel中rules验证规格
dcj3sjt126com
rulesyiivalidate
Yii cValidator主要用法分析:
yii验证rulesit 分类: Yii yii的rules验证 cValidator主要属性 attributes ,builtInValidators,enableClientValidation,message,on,safe,skipOnError
 
- 基于vagrant的redis主从实验
dcj3sjt126com
vagrant
平台: Mac
工具: Vagrant
系统: Centos6.5
实验目的: Redis主从
实现思路
制作一个基于sentos6.5, 已经安装好reids的box, 添加一个脚本配置从机, 然后作为后面主机从机的基础box
制作sentos6.5+redis的box
mkdir vagrant_redis
cd vagrant_
- Memcached(二)、Centos安装Memcached服务器
frank1234
centosmemcached
一、安装gcc
rpm和yum安装memcached服务器连接没有找到,所以我使用的是make的方式安装,由于make依赖于gcc,所以要先安装gcc
开始安装,命令如下,[color=red][b]顺序一定不能出错[/b][/color]:
建议可以先切换到root用户,不然可能会遇到权限问题:su root 输入密码......
rpm -ivh kernel-head
- Remove Duplicates from Sorted List
hcx2013
remove
Given a sorted linked list, delete all duplicates such that each element appear only once.
For example,Given 1->1->2, return 1->2.Given 1->1->2->3->3, return&
- Spring4新特性——JSR310日期时间API的支持
jinnianshilongnian
spring4
Spring4新特性——泛型限定式依赖注入
Spring4新特性——核心容器的其他改进
Spring4新特性——Web开发的增强
Spring4新特性——集成Bean Validation 1.1(JSR-349)到SpringMVC
Spring4新特性——Groovy Bean定义DSL
Spring4新特性——更好的Java泛型操作API
Spring4新
- 浅谈enum与单例设计模式
247687009
java单例
在JDK1.5之前的单例实现方式有两种(懒汉式和饿汉式并无设计上的区别故看做一种),两者同是私有构
造器,导出静态成员变量,以便调用者访问。
第一种
package singleton;
public class Singleton {
//导出全局成员
public final static Singleton INSTANCE = new S
- 使用switch条件语句需要注意的几点
openwrt
cbreakswitch
1. 当满足条件的case中没有break,程序将依次执行其后的每种条件(包括default)直到遇到break跳出
int main()
{
int n = 1;
switch(n) {
case 1:
printf("--1--\n");
default:
printf("defa
- 配置Spring Mybatis JUnit测试环境的应用上下文
schnell18
springmybatisJUnit
Spring-test模块中的应用上下文和web及spring boot的有很大差异。主要试下来差异有:
单元测试的app context不支持从外部properties文件注入属性
@Value注解不能解析带通配符的路径字符串
解决第一个问题可以配置一个PropertyPlaceholderConfigurer的bean。
第二个问题的具体实例是:
 
- Java 定时任务总结一
tuoni
javaspringtimerquartztimertask
Java定时任务总结 一.从技术上分类大概分为以下三种方式: 1.Java自带的java.util.Timer类,这个类允许你调度一个java.util.TimerTask任务; 说明: java.util.Timer定时器,实际上是个线程,定时执行TimerTask类 &
- 一种防止用户生成内容站点出现商业广告以及非法有害等垃圾信息的方法
yangshangchuan
rank相似度计算文本相似度词袋模型余弦相似度
本文描述了一种在ITEYE博客频道上面出现的新型的商业广告形式及其应对方法,对于其他的用户生成内容站点类型也具有同样的适用性。
最近在ITEYE博客频道上面出现了一种新型的商业广告形式,方法如下:
1、注册多个账号(一般10个以上)。
2、从多个账号中选择一个账号,发表1-2篇博文