文档库 最新最全的文档下载
当前位置:文档库 › Gevent指南

Gevent指南

Gevent指南
Gevent指南

gevent 程序员指南

由Gevent 社区编写

gevent是一个基于libev [1]的并发库。它为各种并发和网络相关的任务提供

了整洁的API。

本指南假定读者有中级Python水平,但不要求有其它更多的知识,不期待读者有并发方面的知识。本指南的目标在于给予你需要的工具来开始使用gevent,帮助你驯服现有的并发问题,并从今开始编写异步应用程序。

按提供贡献的时间先后顺序列出如下: Stephen Diehl [2] Jérémy Bethmont [3] sww [4] Bruno Bigras [5] David Ripton [6] Travis Cline [7] Boris Feld [8] youngsterxyf [9] Eddie Hebert [10] Alexis Metaireau [11] Daniel Velkov [12]

同时感谢Denis Bilenko写了gevent和相应的指导以形成本指南。

这是一个以MIT许可证发布的协作文档。你想添加一些内容?或看见一个排版错误? Fork一个分支发布一个request到 Github [13]. 我们欢迎任何贡献。

本页也有日文版本[14]。

Greenlets

在gevent中用到的主要模式是Greenlet, 它是以C扩展模块形式接入Python的轻量级协程。 Greenlet全部运行在主程序操作系统进程的内部,但它们被协作式地调度。

在任何时刻,只有一个协程在运行。

这与m u l t i p r o c e s s i n g或t h r e a d i n g等提供真正并行构造的库是不同的。这些库轮转使用操作系统调度的进程和线程,是真正的并行。

同步和异步执行

并发的核心思想在于,大的任务可以分解成一系列的子任务,后者可以被调度成同时执行或异步执行,而不是一次一个地或者同步地执行。两个子任务之间的切换也就是上下文切换。

在gevent里面,上下文切换是通过yielding来完成的. 在下面的例子里,我们有两个上下文,通过调用g e v e n t.s l e e p(0),它们各自yield向对方。

i m p o r t g e v e n t

d e f f o o():

p r i n t('R u n n i n g i n f o o')

g e v e n t.s l e e p(0)

p r i n t('E x p l i c i t c o n t e x t s w i t c h t o f o o a g a i n')

d e f b a r():

p r i n t('E x p l i c i t c o n t e x t t o b a r')

g e v e n t.s l e e p(0)

p r i n t('I m p l i c i t c o n t e x t s w i t c h b a c k t o b a r')

g e v e n t.j o i n a l l([

g e v e n t.s p a w n(f o o),

g e v e n t.s p a w n(b a r),

])

R u n n i n g i n f o o

E x p l i c i t c o n t e x t t o b a r

E x p l i c i t c o n t e x t s w i t c h t o f o o a g a i n

I m p l i c i t c o n t e x t s w i t c h b a c k t o b a r

下图将控制流形象化,就像在调试器中单步执行整个程序,以说明上下文切换如何发生。

当我们在受限于网络或IO的函数中使用gevent,这些函数会被协作式的调度,gevent的真正能力会得到发挥。Gevent处理了所有的细节,来保证你的网络库会在可能的时候,隐式交出greenlet上下文的执行权。这样的一种用法是如何强大,怎么强调都不为过。或者我们举些例子来详述。

下面例子中的s e l e c t()函数通常是一个在各种文件描述符上轮询的阻塞调用。

i m p o r t t i m e

i m p o r t g e v e n t

f r o m

g e v e n t i m p o r t s e l e c t

s t a r t=t i m e.t i m e()

t i c=l a m b d a:'a t%1.1f s e c o n d s'%(t i m e.t i m e()-s t a r t)

d e f g r1():

#B u s y w a i t s f o r a s e c o n d,b u t w e d o n't w a n t t o s t i c k a r o u n d...

p r i n t('S t a r t e d P o l l i n g:%s'%t i c())

s e l e c t.s e l e c t([],[],[],2)

p r i n t('E n d e d P o l l i n g:%s'%t i c())

d e f g r2():

#B u s y w a i t s f o r a s e c o n d,b u t w e d o n't w a n t t o s t i c k a r o u n d...

p r i n t('S t a r t e d P o l l i n g:%s'%t i c())

s e l e c t.s e l e c t([],[],[],2)

p r i n t('E n d e d P o l l i n g:%s'%t i c())

d e f g r3():

p r i n t("H e y l e t s d o s o m e s t u f f w h i l e t h e g r e e n l e t s p o l l,%s"%t i c())

g e v e n t.s l e e p(1)

g e v e n t.j o i n a l l([

g e v e n t.s p a w n(g r1),

g e v e n t.s p a w n(g r2),

g e v e n t.s p a w n(g r3),

])

S t a r t e d P o l l i n g:a t0.0s e c o n d s

S t a r t e d P o l l i n g:a t0.0s e c o n d s

H e y l e t s d o s o m e s t u f f w h i l e t h e g r e e n l e t s p o l l,a t0.0s e c o n d s

E n d e d P o l l i n g:a t2.0s e c o n d s

E n d e d P o l l i n g:a t2.0s e c o n d s

下面是另外一个多少有点人造色彩的例子,定义一个非确定性的(non-deterministic)的t a s k函数(给定相同输入的情况下,它的输出不保证相同)。此例中执行这个函数的副作用就是,每次task在它的执行过程中都会随机地停某些秒。

i m p o r t g e v e n t

i m p o r t r a n d o m

d e f t a s k(p i d):

"""

S o m e n o n-d e t e r m i n i s t i c t a s k

"""

g e v e n t.s l e e p(r a n d o m.r a n d i n t(0,2)*0.001)

p r i n t('T a s k%s d o n e'%p i d)

d e f s y n c h r o n o u s():

f o r i i n r a n

g e(1,10):

t a s k(i)

d e f a s y n c h r o n o u s():

t h r e a d s=[g e v e n t.s p a w n(t a s k,i)f o r i i n x r a n g e(10)]

g e v e n t.j o i n a l l(t h r e a d s)

p r i n t('S y n c h r o n o u s:')

s y n c h r o n o u s()

p r i n t('A s y n c h r o n o u s:')

a s y n c h r o n o u s()

S y n c h r o n o u s:

T a s k1d o n e

T a s k2d o n e

T a s k3d o n e

T a s k4d o n e

T a s k5d o n e

T a s k6d o n e

T a s k7d o n e

T a s k8d o n e

T a s k9d o n e

A s y n c h r o n o u s:

T a s k3d o n e

T a s k7d o n e

T a s k9d o n e

T a s k2d o n e

T a s k4d o n e

T a s k1d o n e

T a s k8d o n e

T a s k6d o n e

T a s k0d o n e

T a s k5d o n e

上例中,在同步的部分,所有的task都同步的执行,结果当每个task在执行时主流程被阻塞(主流程的执行暂时停住)。

程序的重要部分是将task函数封装到Greenlet内部线程的g e v e n t.s p a w n。初始化的greenlet列表存放在数组t h r e a d s中,此数组被传给g e v e n t.j o i n a l l函数,后者阻塞

当前流程,并执行所有给定的greenlet。执行流程只会在所有greenlet执行完后才会继续向下走。

要重点留意的是,异步的部分本质上是随机的,而且异步部分的整体运行时间比同步要大大减少。事实上,同步部分的最大运行时间,即是每个task停0.002秒,结果整个队列要停0.02秒。而异步部分的最大运行时间大致为0.002秒,因为没有任何一个task会阻塞其它task的执行。

一个更常见的应用场景,如异步地向服务器取数据,取数据操作的执行时间依赖

于发起取数据请求时远端服务器的负载,各个请求的执行时间会有差别。

i m p o r t g e v e n t.m o n k e y

g e v e n t.m o n k e y.p a t c h_s o c k e t()

i m p o r t g e v e n t

i m p o r t u r l l i b2

i m p o r t s i m p l e j s o n a s j s o n

d e f f e t c h(p i d):

r e s p o n s e=u r l l i b2.u r l o p e n('h t t p://j s o n-t i m e.a p p s p o t.c o m/t i m e.j s o n') r e s u l t=r e s p o n s e.r e a d()

j s o n_r e s u l t=j s o n.l o a d s(r e s u l t)

d a t

e t i m e=j s o n_r e s u l t['d a t e t i m e']

p r i n t('P r o c e s s%s:%s'%(p i d,d a t e t i m e))

r e t u r n j s o n_r e s u l t['d a t e t i m e']

d e f s y n c h r o n o u s():

f o r i i n r a n

g e(1,10):

f e t c h(i)

d e f a s y n c h r o n o u s():

t h r e a d s=[]

f o r i i n r a n

g e(1,10):

t h r e a d s.a p p e n d(g e v e n t.s p a w n(f e t c h,i))

g e v e n t.j o i n a l l(t h r e a d s)

p r i n t('S y n c h r o n o u s:')

s y n c h r o n o u s()

p r i n t('A s y n c h r o n o u s:')

a s y n c h r o n o u s()

就像之前所提到的,greenlet具有确定性。在相同配置相同输入的情况下,它们总是会产生相同的输出。下面就有例子,我们在multiprocessing的pool之间执行一系列的任务,与在gevent的pool之间执行作比较。

i m p o r t t i m e

d e f e c h o(i):

t i m e.s l e e p(0.001)

r e t u r n i

#N o n D e t e r m i n i s t i c P r o c e s s P o o l

f r o m m u l t i p r o c e s s i n g.p o o l i m p o r t P o o l

p=P o o l(10)

r u n1=[a f o r a i n p.i m a p_u n o r d e r e d(e c h o,x r a n g e(10))]

r u n2=[a f o r a i n p.i m a p_u n o r d e r e d(e c h o,x r a n g e(10))]

r u n3=[a f o r a i n p.i m a p_u n o r d e r e d(e c h o,x r a n g e(10))]

r u n4=[a f o r a i n p.i m a p_u n o r d e r e d(e c h o,x r a n g e(10))]

p r i n t(r u n1==r u n2==r u n3==r u n4)

#D e t e r m i n i s t i c G e v e n t P o o l

f r o m

g e v e n t.p o o l i m p o r t P o o l

p=P o o l(10)

r u n1=[a f o r a i n p.i m a p_u n o r d e r e d(e c h o,x r a n g e(10))]

r u n2=[a f o r a i n p.i m a p_u n o r d e r e d(e c h o,x r a n g e(10))]

r u n3=[a f o r a i n p.i m a p_u n o r d e r e d(e c h o,x r a n g e(10))]

r u n4=[a f o r a i n p.i m a p_u n o r d e r e d(e c h o,x r a n g e(10))]

p r i n t(r u n1==r u n2==r u n3==r u n4)

F a l s e

T r u e

即使gevent通常带有确定性,当开始与如socket或文件等外部服务交互时,不确定性也可能溜进你的程序中。因此尽管gevent线程是一种“确定的并发”形式,使用它仍然可能会遇到像使用POSIX线程或进程时遇到的那些问题。

涉及并发长期存在的问题就是竞争条件(race condition)。简单来说,当两个并发线程/进程都依赖于某个共享资源同时都尝试去修改它的时候,就会出现竞争条件。这会导致资源修改的结果状态依赖于时间和执行顺序。这是个问题,我们一般会做很多努力尝试避免竞争条件,因为它会导致整个程序行为变得不确定。

最好的办法是始终避免所有全局的状态。全局状态和导入时(import-time)副作用总是会反咬你一口!

创建Greenlets

gevent对Greenlet初始化提供了一些封装,最常用的使用模板之一有

i m p o r t g e v e n t

f r o m

g e v e n t i m p o r t G r e e n l e t

d e f f o o(m e s s a g e,n):

"""

E a c h t h r e a d w i l l b e p a s s e d t h e m e s s a g e,a n d n a r g u m e n t s

i n i t s i n i t i a l i z a t i o n.

"""

g e v e n t.s l e e p(n)

p r i n t(m e s s a g e)

#I n i t i a l i z e a n e w G r e e n l e t i n s t a n c e r u n n i n g t h e n a m e d f u n c t i o n

#f o o

t h r e a d1=G r e e n l e t.s p a w n(f o o,"H e l l o",1)

#W r a p p e r f o r c r e a t i n g a n d r u n n i n g a n e w G r e e n l e t f r o m t h e n a m e d

#f u n c t i o n f o o,w i t h t h e p a s s e d a r g u m e n t s

t h r e a d2=g e v e n t.s p a w n(f o o,"I l i v e!",2)

#L a m b d a e x p r e s s i o n s

t h r e a d3=g e v e n t.s p a w n(l a m b d a x:(x+1),2)

t h r e a d s=[t h r e a d1,t h r e a d2,t h r e a d3]

#B l o c k u n t i l a l l t h r e a d s c o m p l e t e.

g e v e n t.j o i n a l l(t h r e a d s)

H e l l o

I l i v e!

除使用基本的Greenlet类之外,你也可以子类化Greenlet类,重载它的_r u n方法。

i m p o r t g e v e n t

f r o m

g e v e n t i m p o r t G r e e n l e t

c l a s s M y G r e e n l e t(G r e e n l e t):

d e f__i n i t__(s e l f,m e s s a g e,n):

G r e e n l e t.__i n i t__(s e l f)

s e l f.m e s s a g e=m e s s a g e

s e l f.n=n

d e f_r u n(s e l f):

p r i n t(s e l f.m e s s a g e)

g e v e n t.s l e e p(s e l f.n)

g=M y G r e e n l e t("H i t h e r e!",3)

g.s t a r t()

g.j o i n()

H i t h e r e!

Greenlet 状态

就像任何其他成段代码,Greenlet也可能以不同的方式运行失败。 Greenlet可能未能成功抛出异常,不能停止运行,或消耗了太多的系统资源。

一个greenlet的状态通常是一个依赖于时间的参数。在greenlet中有一些标志,让你可以监视它的线程内部状态:

s t a r t e d -- Boolean, 指示此Greenlet是否已经启动

r e a d y() -- Boolean, 指示此Greenlet是否已经停止

s u c c e s s f u l() -- Boolean, 指示此Greenlet是否已经停止而且没抛异常

v a l u e -- 任意值, 此Greenlet代码返回的值

e x c e p t i o n -- 异常, 此Greenlet内抛出的未捕获异常

i m p o r t g e v e n t

d e f w i n():

r e t u r n'Y o u w i n!'

d e f f a i l():

r a i s e E x c e p t i o n('Y o u f a i l a t f a i l i n g.')

w i n n e r=g e v e n t.s p a w n(w i n)

l o s e r=g e v e n t.s p a w n(f a i l)

p r i n t(w i n n e r.s t a r t e d)#T r u e

p r i n t(l o s e r.s t a r t e d)#T r u e

#E x c e p t i o n s r a i s e d i n t h e G r e e n l e t,s t a y i n s i d e t h e G r e e n l e t.

t r y:

g e v e n t.j o i n a l l([w i n n e r,l o s e r])

e x c e p t E x c e p t i o n a s e:

p r i n t('T h i s w i l l n e v e r b e r e a c h e d')

p r i n t(w i n n e r.v a l u e)#'Y o u w i n!'

p r i n t(l o s e r.v a l u e)#N o n e

p r i n t(w i n n e r.r e a d y())#T r u e

p r i n t(l o s e r.r e a d y())#T r u e

p r i n t(w i n n e r.s u c c e s s f u l())#T r u e

p r i n t(l o s e r.s u c c e s s f u l())#F a l s e

#T h e e x c e p t i o n r a i s e d i n f a i l,w i l l n o t p r o p o g a t e o u t s i d e t h e

#g r e e n l e t.A s t a c k t r a c e w i l l b e p r i n t e d t o s t d o u t b u t i t

#w i l l n o t u n w i n d t h e s t a c k o f t h e p a r e n t.

p r i n t(l o s e r.e x c e p t i o n)

#I t i s p o s s i b l e t h o u g h t o r a i s e t h e e x c e p t i o n a g a i n o u t s i d e

#r a i s e l o s e r.e x c e p t i o n

#o r w i t h

#l o s e r.g e t()

T r u e

T r u e

Y o u w i n!

N o n e

T r u e

T r u e

T r u e

F a l s e

Y o u f a i l a t f a i l i n g.

当主程序(main program)收到一个SIGQUIT信号时,不能成功做yield操作的Greenlet可能会令意外地挂起程序的执行。这导致了所谓的僵尸进程,它需要在Python解释器之外被kill掉。

对此,一个通用的处理模式就是在主程序中监听SIGQUIT信号,在程序退出调用g e v e n t.s h u t d o w n。

i m p o r t g e v e n t

i m p o r t s i g n a l

d e f r u n_f o r e v e r():

g e v e n t.s l e e p(1000)

i f__n a m e__=='__m a i n__':

g e v e n t.s i g n a l(s i g n a l.S I G Q U I T,g e v e n t.s h u t d o w n)

t h r e a d=g e v e n t.s p a w n(r u n_f o r e v e r)

t h r e a d.j o i n()

超时是一种对一块代码或一个Greenlet的运行时间的约束。

i m p o r t g e v e n t

f r o m

g e v e n t i m p o r t T i m e o u t

s e c o n d s=10

t i m e o u t=T i m e o u t(s e c o n d s)

t i m e o u t.s t a r t()

d e f w a i t():

g e v e n t.s l e e p(10)

t r y:

g e v e n t.s p a w n(w a i t).j o i n()

e x c e p t T i m e o u t:

p r i n t('C o u l d n o t c o m p l e t e')

超时类也可以用在上下文管理器(context manager)中, 也就是with语句内。

i m p o r t g e v e n t

f r o m

g e v e n t i m p o r t T i m e o u t

t i m e_t o_w a i t=5#s e c o n d s

c l a s s T o o L o n g(E x c e p t i o n):

p a s s

w i t h T i m e o u t(t i m e_t o_w a i t,T o o L o n g):

g e v e n t.s l e e p(10)

另外,对各种Greenlet和数据结构相关的调用,gevent也提供了超时参数。例如:

i m p o r t g e v e n t

f r o m

g e v e n t i m p o r t T i m e o u t

d e f w a i t():

g e v e n t.s l e e p(2)

t i m e r=T i m e o u t(1).s t a r t()

t h r e a d1=g e v e n t.s p a w n(w a i t)

t r y:

t h r e a d1.j o i n(t i m e o u t=t i m e r)

e x c e p t T i m e o u t:

p r i n t('T h r e a d1t i m e d o u t')

#--

t i m e r=T i m e o u t.s t a r t_n e w(1)

t h r e a d2=g e v e n t.s p a w n(w a i t)

t r y:

t h r e a d2.g e t(t i m e o u t=t i m e r)

e x c e p t T i m e o u t:

p r i n t('T h r e a d2t i m e d o u t')

#--

t r y:

g e v e n t.w i t h_t i m e o u t(1,w a i t)

e x c e p t T i m e o u t:

p r i n t('T h r e a d3t i m e d o u t')

T h r e a d1t i m e d o u t

T h r e a d2t i m e d o u t

T h r e a d3t i m e d o u t

猴子补丁(Monkey patching )

我们现在来到gevent的死角了. 在此之前,我已经避免提到猴子补丁(monkey patching) 以尝试使gevent这个强大的协程模型变得生动有趣,但现在到了讨论猴子补丁的黑色艺术的时候了。你之前可能注意到我们提到了m o n k e y.p a t c h_s o c k e t()这个命令,这个纯粹副作用命令是用来改变标准socket库的。

i m p o r t s o c k e t

p r i n t(s o c k e t.s o c k e t)

p r i n t("A f t e r m o n k e y p a t c h")

f r o m

g e v e n t i m p o r t m o n k e y

m o n k e y.p a t c h_s o c k e t()

p r i n t(s o c k e t.s o c k e t)

i m p o r t s e l e c t

p r i n t(s e l e c t.s e l e c t)

m o n k e y.p a t c h_s e l e c t()

p r i n t("A f t e r m o n k e y p a t c h")

p r i n t(s e l e c t.s e l e c t)

c l a s s's o c k e t.s o c k e t'

A f t e r m o n k e y p a t c h

c l a s s'g e v e n t.s o c k e t.s o c k e t'

b u i l t-i n f u n

c t i o n s e l e c t

A f t e r m o n k e y p a t c h

f u n c t i o n s e l e c t a t0x1924d e8

Python的运行环境允许我们在运行时修改大部分的对象,包括模块,类甚至函数。这是个一般说来令人惊奇的坏主意,因为它创造了“隐式的副作用”,如果出现问题它很多时候是极难调试的。虽然如此,在极端情况下当一个库需要修改Python本身的基础行为的时候,猴子补丁就派上用场了。在这种情况下,gevent 能够修改标准库里面大部分的阻塞式系统调用,包括s o c k e t、s s l、t h r e a d i n g和

s e l e c t等模块,而变为协作式运行。

例如,Redis的python绑定一般使用常规的tcp socket来与r e d i s-s e r v e r实例通信。通过简单地调用g e v e n t.m o n k e y.p a t c h_a l l(),可以使得redis的绑定协作式的调度请求,与gevent栈的其它部分一起工作。

这让我们可以将一般不能与gevent共同工作的库结合起来,而不用写哪怕一行代码。虽然猴子补丁仍然是邪恶的(evil),但在这种情况下它是“有用的邪恶(useful evil)”。

事件(event)是一个在Greenlet之间异步通信的形式。

i m p o r t g e v e n t

f r o m

g e v e n t.e v e n t i m p o r t E v e n t

'''

I l l u s t r a t e s t h e u s e o f e v e n t s

'''

e v t=E v e n t()

d e f s e t t e r():

'''A f t e r3s e c o n d s,w a k e a l l t h r e a d s w a i t i n g o n t h e v a l u e o f e v t''' p r i n t('A:H e y w a i t f o r m e,I h a v e t o d o s o m e t h i n g')

g e v e n t.s l e e p(3)

p r i n t("O k,I'm d o n e")

e v t.s e t()

d e f w a i t e r():

'''A f t e r3s e c o n d s t h e g e t c a l l w i l l u n b l o c k'''

p r i n t("I'l l w a i t f o r y o u")

e v t.w a i t()#b l o c k i n g

p r i n t("I t's a b o u t t i m e")

d e f m a i n():

g e v e n t.j o i n a l l([

g e v e n t.s p a w n(s e t t e r),

g e v e n t.s p a w n(w a i t e r),

g e v e n t.s p a w n(w a i t e r),

g e v e n t.s p a w n(w a i t e r),

g e v e n t.s p a w n(w a i t e r),

g e v e n t.s p a w n(w a i t e r)

])

i f__n a m e__=='__m a i n__':m a i n()

事件对象的一个扩展是AsyncResult,它允许你在唤醒调用上附加一个值。它有时也被称作是future或defered,因为它持有一个指向将来任意时间可设置为任何值的引用。

i m p o r t g e v e n t

f r o m

g e v e n t.e v e n t i m p o r t A s y n c R e s u l t

a=A s y n c R e s u l t()

d e f s e t t e r():

"""

A f t e r3s e c o n d s s e t t h e r e s u l t o f a.

"""

g e v e n t.s l e e p(3)

a.s e t('H e l l o!')

d e f w a i t e r():

"""

A f t e r3s e c o n d s t h e g e t c a l l w i l l u n b l o c k a f t e r t h e s e t t e r

p u t s a v a l u e i n t o t h e A s y n c R e s u l t.

"""

p r i n t(a.g e t())

g e v e n t.j o i n a l l([

g e v e n t.s p a w n(s e t t e r),

g e v e n t.s p a w n(w a i t e r),

])

队列是一个排序的数据集合,它有常见的p u t / g e t操作,但是它是以在Greenlet之间可以安全操作的方式来实现的。

举例来说,如果一个Greenlet从队列中取出一项,此项就不会被同时执行的其它Greenlet再取到了。

i m p o r t g e v e n t

f r o m

g e v e n t.q u e u e i m p o r t Q u e u e

t a s k s=Q u e u e()

d e f w o r k e r(n):

w h i l e n o t t a s k s.e m p t y():

t a s k=t a s k s.g e t()

p r i n t('W o r k e r%s g o t t a s k%s'%(n,t a s k))

g e v e n t.s l e e p(0)

p r i n t('Q u i t t i n g t i m e!')

d e f b o s s():

f o r i i n x r a n

g e(1,25):

t a s k s.p u t_n o w a i t(i)

g e v e n t.s p a w n(b o s s).j o i n()

g e v e n t.j o i n a l l([

g e v e n t.s p a w n(w o r k e r,'s t e v e'),

g e v e n t.s p a w n(w o r k e r,'j o h n'),

g e v e n t.s p a w n(w o r k e r,'n a n c y'),

])

W o r k e r s t e v e g o t t a s k1

W o r k e r j o h n g o t t a s k2

W o r k e r n a n c y g o t t a s k3

W o r k e r s t e v e g o t t a s k4

W o r k e r n a n c y g o t t a s k5

W o r k e r j o h n g o t t a s k6

W o r k e r s t e v e g o t t a s k7

W o r k e r j o h n g o t t a s k8

W o r k e r n a n c y g o t t a s k9

W o r k e r s t e v e g o t t a s k10

W o r k e r n a n c y g o t t a s k11

W o r k e r j o h n g o t t a s k12

W o r k e r s t e v e g o t t a s k13

W o r k e r j o h n g o t t a s k14

W o r k e r n a n c y g o t t a s k15

W o r k e r s t e v e g o t t a s k16

W o r k e r n a n c y g o t t a s k17

W o r k e r j o h n g o t t a s k18

W o r k e r s t e v e g o t t a s k19

W o r k e r j o h n g o t t a s k20

W o r k e r n a n c y g o t t a s k21

W o r k e r s t e v e g o t t a s k22

W o r k e r n a n c y g o t t a s k23

W o r k e r j o h n g o t t a s k24

Q u i t t i n g t i m e!

Q u i t t i n g t i m e!

Q u i t t i n g t i m e!

如果需要,队列也可以阻塞在p u t或g e t操作上。

p u t和g e t操作都有非阻塞的版本,p u t_n o w a i t和g e t_n o w a i t不会阻塞,然而在操作不能完成时抛出g e v e n t.q u e u e.E m p t y或g e v e n t.q u e u e.F u l l异常。

在下面例子中,我们让boss与多个worker同时运行,并限制了queue不能放入多于3个元素。这个限制意味着,直到queue有空余空间之间,p u t操作会被阻塞。相反地,如果队列中没有元素,g e t操作会被阻塞。它同时带一个timeout参数,允许在超时时间内如果队列没有元素无法完成操作就抛出g e v e n t.q u e u e.E m p t y异常。

i m p o r t g e v e n t

f r o m

g e v e n t.q u e u e i m p o r t Q u e u e,E m p t y

t a s k s=Q u e u e(m a x s i z e=3)

d e f w o r k e r(n):

t r y:

w h i l e T r u e:

t a s k=t a s k s.g e t(t i m e o u t=1)#d e c r e m e n t s q u e u e s i z e b y1

p r i n t('W o r k e r%s g o t t a s k%s'%(n,t a s k))

g e v e n t.s l e e p(0)

e x c e p t E m p t y:

p r i n t('Q u i t t i n g t i m e!')

d e f b o s s():

"""

B o s s w i l l w a i t t o h a n d o u t w o r k u n t i l a i n d i v i d u a l w o r k e r i s

f r e e s i n c e t h e m a x s i z e o f t h e t a s k q u e u e i s3.

"""

f o r i i n x r a n

g e(1,10):

t a s k s.p u t(i)

p r i n t('A s s i g n e d a l l w o r k i n i t e r a t i o n1')

f o r i i n x r a n

g e(10,20):

t a s k s.p u t(i)

p r i n t('A s s i g n e d a l l w o r k i n i t e r a t i o n2')

g e v e n t.j o i n a l l([

g e v e n t.s p a w n(b o s s),

g e v e n t.s p a w n(w o r k e r,'s t e v e'),

g e v e n t.s p a w n(w o r k e r,'j o h n'),

g e v e n t.s p a w n(w o r k e r,'b o b'),

])

W o r k e r s t e v e g o t t a s k1

W o r k e r j o h n g o t t a s k2

W o r k e r b o b g o t t a s k3

W o r k e r s t e v e g o t t a s k4

W o r k e r b o b g o t t a s k5

W o r k e r j o h n g o t t a s k6

A s s i g n e d a l l w o r k i n i t e r a t i o n1

W o r k e r s t e v e g o t t a s k7

W o r k e r j o h n g o t t a s k8

W o r k e r b o b g o t t a s k9

W o r k e r s t e v e g o t t a s k10

W o r k e r b o b g o t t a s k11

W o r k e r j o h n g o t t a s k12

W o r k e r s t e v e g o t t a s k13

W o r k e r j o h n g o t t a s k14

W o r k e r b o b g o t t a s k15

W o r k e r s t e v e g o t t a s k16

W o r k e r b o b g o t t a s k17

W o r k e r j o h n g o t t a s k18

A s s i g n e d a l l w o r k i n i t e r a t i o n2

W o r k e r s t e v e g o t t a s k19

Q u i t t i n g t i m e!

Q u i t t i n g t i m e!

Q u i t t i n g t i m e!

组(group)是一个运行中greenlet的集合,集合中的greenlet像一个组一样会被共同管理和调度。它也兼饰了像Python的m u l t i p r o c e s s i n g库那样的平行调度器的角色。

i m p o r t g e v e n t

f r o m

g e v e n t.p o o l i m p o r t G r o u p

《成本会计学》自学指导书

《成本会计学》自学指导书 附: 作业题目 一、单项选择题(每题2分,共30 分) 1.按照马克思的成本理论,产品成本是产品价值中的()部分。 A.C+M B.C+V C.V+M D.C+V+M 2.生产费用中按受益原则分配的费用是()。 A.直接计入费用B.固定费用C.间接计入费用D.变动费用3.车间领用的一般性工具,应计入()账户。 A.销售费用B.生产成本C.制造费用D.管理费用 4.辅助生产费用交互分配后,再在()分配。 A.辅助生产车间以外受益单位C.各辅助生产单位之间B.各受益单位之间D.各基本生产车间之间 5.辅助生产费用计划成本分配法产生的成本差异,可简单处理计入()账户。 A.管理费用B.制造费用C.基本生产成本D.销售费用 6.在产品成本按所耗直接材料费用计算方法,适用于()。 A.各月末在产品不多B.各月末在产品较多C.各月末在产品数量不稳 D.直接材料在成本中所占比重较大 7.某产品工时定额为40小时,经2道工序,分别为30小时和10小时,则第二道工序的完工程度为()。 A.37.5% B.50% C.87.5% D.90% 8.产品成本计算基本方法是()。 A.直接法B.顺序法C.品种法D.代数法 9.品种法的成本计算对象是()。

A.产成品B.产品品种C.产品批次D.步骤10.简化分批法与分批法主要区别是()。 A.不分批计算完工产品成本C.分批核算原材料费用B.不分批计算在产品成本D.不分配间接费用 11.平行结转分步法中在产品的含义是()。 A.本步骤在产品B.最终产成品C.狭义在产品D.广义在产品 12.成本还原是将()耗用各步骤半成品的综合成本,逐步分解还原为原始成本项目的成本。 A.广义在产品B.自制半成品C.狭义在产品D.产成品 13.一般情况下,下列企业中适用选择平行结转分步法的是()。 A.纺织B.采掘C.冶金D.重型机械制造 14.在分离后再发生的加工成本为()。 A.联合成本B.可归属成本C.可分成本D.共同成本 15.产品生产过程中各项实际生产费用脱离了定额的差异为()。 A.定额成本B.脱离定额差异C.材料成本差异D.定额变动差异 16.成本这种资金耗费,是相对于()而言的。 A.一定对象B.一定时期C.一个单位D.一个企业 17.下列各项中属于产品成本项目的是()。 A.折旧费用B.燃料和动力C.直接人工D.期间费用 18.下列人员工资,应计入产品中直接人工项目的有()。 A.车间管理人员B.厂部管理人员C.生产工人D.销售人员 19.辅助生产费用分配方法中,能分清内部经济责任,有利于实际厂内经济核算的是()。A.直接分配法B.交互分配法C.顺序分配法D.计划成本分配法

婚姻家庭社会学期末试题汇编

一.名词解释 1.家庭家庭是以婚姻、血缘关系和共同经济为纽带而组成的亲属团体。 2.核心家庭是指夫妻和未婚子女所组成的家庭。夫妇中有一人死亡,但有未婚子女的家庭也应该归为此类。 3.家庭网一般是指有亲属关系的家庭之间所组成的社会网络.是以家长为内 容主线,以家长、家庭为服务对象,以育儿、家庭消费、家长社区为服务主导,全面涵盖家长、家庭生活需求的方方面面 4.亲子关系是指父母与子女之间的关系,它是由夫妻关系而产生的一种最基本、最重要的家庭关系。从法律上讲,亲子关系是指父母与子女之间的权利和义务关系。 5.血亲和姻亲血亲是指有血缘关系的亲属,是以具有共同祖先为特征的亲属关系。血亲又分为直系血亲和旁系血亲两种。姻亲是以婚姻关系为中介而产生的亲属。具体分为(1)血亲的配偶(2)配偶的血亲(3)配偶的血亲的配偶。 6.冷暴力一般是指当夫妻之间或其他成员之间发生矛盾时,不是通过武力方 式处理,而是对对方表现出冷淡、轻视、放任、疏远、侮辱等,如不理睬对方、将语言交流降到最低程度、夫妻间停止或者敷衍性生活、不做或者尽量少做家务,或者冷嘲热讽、侮辱对方人格等,从精神上伤害虐待对方。 7.“普纳路亚”家庭人类家庭的第二种形式。由美国人类学家L H 摩尔根命名, 并把它作为群婚家庭的典型。普那路亚(punalua)是夏威夷语,意为“亲密的伙伴”。这个名称是从最早发现实行这种家庭形式的夏威夷群岛的土著人那里来的,由共妻的一群丈夫互称"普那路亚";共夫的一群妻子也互称“普那路亚”。这种 家庭制度是群婚发展的最典型的阶段。原始社会发展到旧石器时代的中、晚期,族群之间必须保持一定的经济合作和社会联系,于是便产生了各族群之间的通婚。同时,在人类本身的生产方面,经过长期生活经验的积累和自然选择规律的作用,人们逐渐认识到族外通婚对后代体质发育有益,并形成了同母所生子女间不应发生性交关系的观念,于是在家庭内部开始排除兄弟姐妹间的婚姻关系,实行两个族群之间的通婚,这就是普那路亚家庭形式。 8.家庭生命周期指家庭有其自身产生、发展和自然结束的运动过程。一般把家庭生命周期划分为六个阶段。形成期(从结婚到第一个孩子出生)扩展期(从第一个孩子出生到最后一个孩子出生)稳定期(从最后一个孩子出生到第一个孩子离开父母家)收缩期(从第一个孩子离开父母家到最后一个孩子离开父母家)空巢期(从最后一个孩子离开父母家到配偶一方死亡)解体期(从配偶一方死亡到配偶另一方死亡)。家庭在不同的生命周期阶段有不同的内容和任务。杜瓦儿将家庭

步教学法

“五步教学法”课堂教学模式的基本步骤 一导课导学 (1)导入新课,出示教学目标 教师要在学生自学之前让他们明确本节课的教学目标。这样不仅可以使学生能够从整体上感知本节课的学习任务和要求,而且可以在接下来的自学活动中做到方向明确,有的放矢,充分发挥学生学习的积极性和主动性。教学目标的陈述要力求简明扼要,层次清晰,并在广度和深度上与教材和课程标准的要求保持一致,既不降低,也不拔高。 (2)出示自学指导,指导学生自学 在这一阶段,教师要让学生知道他们需要自学什么内容,怎样进行自学、可以用多长时间,最后要达到什么要求等等。学习有了具体的范围和要求,而且有了规定的时间限制,这样可以使学生在学习时有了一定的压力,适当增加学习的紧张程度,提高学生自学的效率。如果在自学时给学生提供具体的方法指导,长期坚持下去,还有利于学生掌握自学的方法,增强自学能力。学生自学前的指导一定要具体、明确,这样学生在学习时心中有数,才能在自学的过程中增强针对性,提高学习的效率。 (3)学生自学,教师巡视 “自学”是指学生按照教师提出的要求进行积极的阅读思考理解课本知识,并内化到自身。教师在学生自学的过程中要进行一定的督查,及时表扬和鼓励那些自学速度快、效果好的学生,同时重点巡视中差学生,可以给后进生说几句悄悄话,帮助其端正自学态度,使他们也变得认真起来。要面向全体学生,不得只关心一个学生或少数几个学生,而放弃了督促大多数学生。 二展示新知 教师在这一阶段,通过提问、学生板演等形式,让学生最大限度地暴露自学中遇到的问题,并对这些问题进行一定的分析判断和归类整理,为有的放矢地进行“解惑”做准备。其目的,一方面是为了充分发挥学生在学习中的自主性,能动性,真正体现学生的主体地位和作用,另一方面,是为了让教师发现学生在学习中暴露出的问题,以便增强接下来的“教”的针对性,不致重复学生自己已经学会的内容。因此,这一环节称为是教师在课堂教学中进行的“二次备课”。再者,提问时要尽量照顾到后进生,如果后进生都学会了,那么就可以保证全班同学基本上都已经达到了本节课的目标。 三质疑解惑 “质疑解惑”是教师在学生自学的基础上,结合“展示新知”环节中存在的问题和疑惑所进行的有针对性的教学活动。它的作用主要是对学生的自学进行一定的梳理和必要的纠正、补充,同时也是对学生自学的更高一层次的深化和提升,这对于提高学生学习的效果是极为关键的。 教师在“质疑解惑”阶段要做到三个“明确”:一是要明确教的内容。教的内容主要指学生在自学过程中暴露出来的带有普遍性倾向的问题,也就是学生目前尚未掌握的教材内容,

网络学习指导(第4版)_在线作业_1

网络学习指导(第4版)_在线作业_1 一、单选题 1. (5分) ? A. 工作指导 ? B. 办学方针 ? C. 教育思想 ? D. 办学理念 纠错 得分: 5 知识点: 1.2 中农大网院介绍 展开解析 答案 B 解析 2. (5分) ? A. 80 ? B. 40 中农大网院的()是:以质量为中心,改革创新、规范管理、适度发展、办出特色。 新生入学后需预付不少于()学分的学费。

? C. 20 ? D. 60 纠错 得分:5 知识点:2.1 缴费 展开解析 答案B 解析 3. (5分) 学院在每个学期期末会组织考前辅导,提供语音在线辅导或文字辅导资料,并放在相应课程的()栏目中,供同学们下载。 ? A. 考试计划 ? B. 辅导资料 ? C. 网上学习 ? D. 毕业论文 纠错 得分:5 知识点:网络学习指导(第4版) 展开解析 答案B

解析 4. (5分) 下列有关统考考生违纪情况处理及处罚说法中,不正确的是:() ? A. 有考试违纪行为的考生,其相关科目的考试成绩无效 ? B. 代替他人或由他人代替参加考试者,取消统考资格 ? C. 有作弊或协同作弊的考生,视其情节轻重,给予警告或记过 ? D. 有考试作弊行为的考生,当次考试全部科目成绩无效,并视情节严重情况给予停考1-3年的处理 纠错 得分:5 知识点:2.7 统考 展开解析 答案C 解析 5. (5分) 学术界普遍认为,远程教育起源自19世纪中叶的(),是以函授教学形式进行的。 ? A. 日本 ? B. 美国

? C. 英国 ? D. 亚洲 纠错 得分:5 知识点:1.3 远程教育介绍 展开解析 答案C 解析 6. (5分) 课程论文的题目可以在()下载。 ? A. 学生论坛? B. 学习指南 ? C. 新生通道 ? D. 我的课堂 纠错 得分:5 知识点:2.6 课程考试 展开解析 答案D 解析

婚姻家庭法所有知识点总结

第一节婚姻家庭 婚姻家庭的概念 1、婚姻的定义:男女双方以永久共同生活为目的,依法自愿缔结的具有权利义务内容的两性结合。 应把握四个层次:婚姻必须是男女两性的结合;必须是社会规范所认可的结合;必须是男女两性合法结合;必须是男女双方以永久共同生活为目的的结合。 2、家庭的定义:是指因婚姻、血缘和法律拟制所产生的,具有权利义务内容的,由一定范围的亲属所组成的共同体,家庭关系则是由法律所规范的家庭成员之间的权利义务关系。 3、家庭的特征:a由一定范围的亲属组成,至少有两人。以一定的亲属关系为前提条件,有固定身份称谓,家庭成员只能限制在亲属的一定范围内,家庭成员一定是亲属,亲属不一定是家庭成员。 b 组成家庭的亲属一般有三个来源:婚姻,血缘,法律拟制。 c 被法律确认和调整的家庭,以权利义务为实体内容,即作为家庭成员的亲属之间在法律上存在明确的权利义务关系。(完备的婚姻家庭立法既要注意调整家庭关系,还要注意调整家庭外的亲属关系) d 家庭作为社会关系的特定形式,既是由人所组成的社会共同体,又是以一定的物为基础的财产集合体。婚姻家庭法一方面应规范亲属身份关系,另一方面还应建立合理有效的家庭财产制度。 4、婚姻与家庭的关系:在本质上,婚姻和家庭都是一种社会关系。其中,婚姻是家庭的前提,家庭是婚姻成立的结果,也是婚姻的结构载体;在微观和现实表现上,婚姻当事人双方组成里最初的家庭,然后才有父母子女、兄弟姐妹等家庭关系。一般来说,家庭关系包括婚姻关系,家庭成员的权利义务则包括夫妻的权利义务。在人类社会发展史上,个体化的婚姻是造就家庭的基本动力之一。因此,婚姻是否稳定,影响到家庭是否稳定,婚姻质量的好坏决定着家庭的命运。 婚姻家庭的结构与职能 5、婚姻的结构:历史上经历了群婚结构、偶婚结构和个体婚结构。一夫多妻或一妻多夫是个体婚的变种。一夫一妻是协调个体利益与社会利益的最佳婚姻结构。 6、婚姻的职能:性爱职能、生育职能、扶助职能。 7、家庭的结构: (一)核心家庭,由一对夫妇及其未婚子女组成的家庭。 1)配偶家庭:只有一对夫妇而没有子女共同生活的家庭 ①未育配偶家庭:尚未生育子女或根本不准备生育子女的一对夫妇所组成的家庭 ②空巢家庭:子女均已成年并单独成家生活或子女不幸死亡,只剩下夫妇两人的老年型家庭。2)单亲家庭:由于死亡或离婚而只剩下夫妇中一方与未婚子女组成的家庭,包括父单亲家庭和母单亲家庭,属于缺损家庭之一。 (二)扩大家庭,与核心家庭相对应,扩大家庭指由两对或两对以上夫妇及其未婚子女组成的家庭。其表现形式主要有两类: 1)主干家庭,又叫直系家庭,或异代扩大家庭:由两对或两对以上均异代夫妇与未婚子女组成的家庭。是核心家庭异代、纵向扩大的结果。 ①一对夫妇与男方或女方父母以及未婚子女所组成的家庭(占多数) ②一对夫妇与男方或女方父母、未婚子女、未婚弟妹或兄姐所组成的家庭。 ③特殊或不完整形式:只有两对或两对以上均异代的夫妇而没有未婚青少年的配偶主干家庭;夫妇或父母缺损一方的单亲主干家庭。 2)联合家庭,又叫复合家庭:由至少两对或两对以上同代夫妇及其未婚子女所组成的家庭,

陈文灯复习指南读后感

提醒哦:2009版的和2008版相比,多了一些小知识点.2009版的还是值得看一看的. 另外,狡猾的老陈,把2008版里的部分例题答案放在了2009年的光盘里,而在2009版里没有给出答案.大家直接到2008版找答案就OK了.用不着破解什么视频. 1---P1.例2 ?疑问: 不知题目中的已知条件二阶导数连续有何用意? 理解: 因为泰勒公式有一个余项是n+1阶导,所以f(x)必须有n+1阶导,那么n 阶导必连续.怎么理解呢?把n阶导看成函数g(x),则n+1阶导就是g'(x),导数存在必连续.所以g(x)连续.泰勒公式展开是n阶指的是除余项以外的项最高阶导数是n阶. 这样看来课本上给出的定义是n+1阶导存在,其实包含着另外一层意思,就是n阶导数连续.以此类推,n-1阶,n-2阶.....直至1阶导数都是连续的. 2----P2.例4 对证法二比较喜欢,小小研究了一下, 并进行了一点思路上的改造,感觉这样改造了,更加实用,更好理解. 3---知识点小结

原函数存在与函数可积: 提出几个知识点: 原函数存在的充分条件:函数连续. 函数可积分的充分条件:3点(都是围绕有界来的)A在闭区间上连续B有限个间断点且有界(注意这里,间断点可能是第二类间断点里的震荡间断点)C单调且有界. 原函数存在--------不定积分 函数可积分--------定积分 原函数存在不一定可积分,可积的函数不一定存在原函数.两者是不同的概念. 原函数存在的函数可能不满足有界的条件,这样它就不可积了.比如y=1/x,它在[-1,1]上就不可积.但是它的原函数是明显存在的.而且它并不连续.所以说连续是原函数存在的充分条件,但并不是必要条件. 可积分的函数,可能积出来的是一个无穷级数之类的东西,不能用有限的简单函数表示出来,这样它虽然可积分,原函数却并不存在. 如果原函数存在,则原函数必可导且连续.(可导必连续) 三个结论(记住即可,不必证明): 1.函数有第一类间断点,则不存在原函数。 2.函数有第二类间断点,则原函数存在性不确定。 3.函数可导,则它的导函数可能连续、也可能有第二类间断点。(是1、2的推论) 4---一道练习题 5-知识点总结 a.

《企业管理》自学指导书

《企业管理》自学指导书 第一章企业及其管理 [学习目的与要求]:理解企业的特征和任务;掌握企业管理的重要性和职能;了解企业管理的发展;掌握现代企业制度的含义和基本特征。 [重点和难点]:企业特征;企业管理职能;现代企业制度。 [内容提要]: 第一节企业的特征、任务和形式 一、企业的含义和特征 二、企业的任务 三、企业的组织(法律)形式,包括独资企业、合伙制企业、股份合作制企业、公司制企业、两合公司、企业集团。 第二节企业管理的重要性和职能 一、企业管理的重要性 二、企业管理的两重性 三、企业管理的职能,包括计划职能、组织职能、指挥职能、协调职能、控制职能。 第三节企业管理的发展 一、资本主义企业管理的发展,包括“传统管理理论”阶段、“科学管理理论”阶段、“行为科学管理理论”阶段、“现代管理理论”阶段。 二、我国企业管理的发展过程 三、企业管理的现代化 第四节现代企业制度 一、现代企业和现代企业制度的含义 1、现代企业及其特征 2、现代企业制度的含义 二、现代企业制度的基本特征 三、现代企业制度的形式,包括有限责任公司、股份有限公司、跨国公司、建立健全现代产权制度 四、完善公司法人治理结构 第二章企业领导制度与管理组织 [学习目的与要求]:了解企业领导制度;理解企业管理组织的概念和作用;掌握组织设计的原则;掌握直线职能制、事业部制和矩阵组织形式的特点;掌握企业管理基础工作的内容与要求。 [重点和难点]:企业管理组织;组织设计原则;企业管理基础工作。 [内容提要]: 第一节企业领导 一、领导的涵义与领导权力的构成 二、领导者的素质,主要表现为政治素质、文化素质、能力素质、作风素质、心理素质和身体素质。 三、企业管理者的类型 第二节企业领导制度 一、经理负责制 二、董事会领导下的总经理负责制 三、企业员工代表大会和党组织的地位和作用 第三节企业管理组织 一、企业管理组织的概念和作用 二、建立和完善企业管理的原则 三、企业组织机构 1、企业组织机构的基本形式有:直线制、直线职能制、事业部制、矩阵组织形式、企业集团(股份制)和模拟分权制。 2、企业组织机构形式的选择以及设计程序 第四节企业管理基础工作 一、企业管理基础工作的特征和作用 二、企业管理基础工作的内容与要求 [作业]: 2-1:我国北方某公司原来是一个生产经营产品品种比较单一、市场需求比较稳定的中小企业。近年来,它陆续收购了许多小公司,规模急剧扩大,而内部管理却十分混乱,于是公司总经理下定决心进行企业改革,其重大举措之一就是重新设计组织结构,具体内容包括: (1)在公司内按产业组建了3个分公司; (2)总公司是独立法人,而各分公司则不是,它们不能注册登记;

大学物理上学习指导作业参考答案(1)

第一章 质点运动学 课 后 作 业 1、一质点沿x 轴运动,其加速度a 与位置坐标x 的关系为 a =2+6 x 2 (SI) 如果质点在原点处的速度为零,试求其在任意位置处的速度. 解:设质点在x 处的速度为v , 62d d d d d d 2x t x x t a +=?== v v 2分 () x x x d 62d 0 20 ??+=v v v 2分 ( ) 2 2 1 3 x x +=v 1分 2、一质点沿x 轴运动,其加速度为a 4t (SI),已知t 0时,质点 位于x 10 m 处,初速度v 0.试求其位置和时间的关系式. 解: =a d v /d t 4=t , d v 4=t d t ? ?=v v 0 d 4d t t t v 2=t 2 3分 v d =x /d t 2=t 2 t t x t x x d 2d 0 20 ?? = x 2= t 3 /3+x 0 (SI) 2分 3、一质点沿半径为R 的圆周运动.质点所经过的弧长与时间的关系为 22 1 ct bt S += 其中b 、c 是大于零的常量,求从0=t 开始到切向加速度与法向 加速度大小相等时所经历的时间.

解: ct b t S +==d /d v 1分 c t a t == d /d v 1分 ()R ct b a n /2 += 1分 根据题意: a t = a n 1分 即 ()R ct b c /2 += 解得 c b c R t -= 1分 4、如图所示,质点P 在水平面内沿一半径为R =2 m 的圆轨道转动.转动的角速度与时间t 的函数关系为2kt =ω (k 为常量).已知s t 2=时,质点P 的速度值为32 m/s .试求1=t s 时,质点P 的速度与加速度的大小. O R P 解:根据已知条件确定常量k () 222/rad 4//s Rt t k ===v ω 1分 24t =ω, 24Rt R ==ωv s t 1=时, v = 4Rt 2 = 8 m/s 1分 2s /168/m Rt dt d a t ===v 1分 22s /32/m R a n ==v 1分 () 8.352 /12 2=+=n t a a a m/s 2 1分 5、一敞顶电梯以恒定速率v 10 m/s 上升.当电梯离地面h =10 m 时,一

操作手册产品使用说明

JBKL型燃烧器PVC全自动 操作手册 大庆国科盛鑫节能环保设备制造有限公司 前言 我国是全世界自然资源浪费最严重的国家之一,在59个接受调查的国家中排名第56位。另据统计,中国的能源使用效率仅为美国的26.9%,日本的11.5%。为此,近年来我国推行了多项节能减排政策措施。目前,为了实现“十一五”规划中确定的单位GDP能耗降低20%的目标、主要污染物排放总量减少10%的约束性指标,国务院发布了继续加强节能工作的决定,节能减排工作迫在眉睫。 在举国重视节能减排工作的大形势下,我公司自主创新,目前已经自主研发9项国家专利技术,全部是节能减排燃油燃气燃烧器技术。我公司发展势头强劲,不断创新探索,为全国节能减排事业做出自己应有的责任。 我公司研发节能减排燃烧器过程中发现,目前小型取暖锅炉普遍使用的国内外燃烧器采用的程序控制工艺是:锅炉出口水温度到达给定值上限后,电磁阀关闭,炉灭火。锅炉出口水温度降到下限时锅炉重新启动,送风机进行3-5分钟炉膛扫线,这时大量冷风进入炉膛里,把炉膛温度大幅降下来,扫完炉膛后,重新喷燃气点火升温,这样消耗燃气量增加。因此我公司燃烧器程序控制是采用自动调节阀来控制燃气喷大小量,锅炉出口水

温平稳,安全运行,提高节能减排数据。 JBKL型燃气燃烧器的设计说明 JBKL型燃烧器主要是针对目前燃气燃烧器喷咀存在的问题而设计的。存在的问题是: 1、目前国内外使用的燃气喷咀是直线喷燃气方式,国际上燃烧器技术较发达的意大利、法国、德国等国家的相关技术也是直线喷燃气方式。燃气是靠自身压力通过燃气喷咀直线喷入炉膛里的,燃气压力而产生的冲力使燃气与空气在推进的一段距离内不容易混合好,因此燃气在逐步扩散中与空气边混合边燃烧,这样炉膛内的火型长,高温度热量停留在炉膛内的受热时间短,使排烟温度升高,导致热效率降低。当加负荷增加燃气压力时冲力增大,烟气在炉膛内的流速加快,排烟温度迅速升高,热效率更低。 2、目前油田加热炉、炼油厂加热炉使用的配风器都是配直流风方式,直流风和燃气混合时出现各走各的现象,完全燃烧所需要的时间长,需要大量的配风才能满足燃烧,在运行时高温度烟气向前的推动力很大,当加负荷加大配风量时,推动力更大,这是加热炉热效率低的重要因素。 针对这样的问题,我们紧紧抓住安全运行、稳定燃烧、快速完全燃烧、配备最佳空气、控制最佳烟气流速和提高炉热效率的关键因素,对锅炉燃烧器相关的结构和部位进行研究和开发,并采取了以下几点措施: 1、燃气压力设计在燃气喷枪管内,运行时燃气冲力产生真空度,利用这个动力把空气吸进来,燃气和空气提前有效地混合,缩短了燃烧的过程和时间,喷出的混合气体立即迅速燃烧,高温度的能量停留在炉膛内的时间长,排烟温度低,提高热效率。

复习指南和复习全书的比较

复习指南和复习全书的比较 陈文登的复习指南:该书注重的是方法和技巧,该书也被称为数学的权威,但随着考研的时间推移,考研重点的改变,此书地位有所降低,但该书中很多的证明例如:关于中值定理的证明,不等式的证明,还有陈被很多人批的微分算子法(该方法我很喜欢,也不超纲)可以说是高等数学的泰斗,他本人也是泰斗级人物。 1.李哥哥的全书这本书,比较“基础”,为什么基础打引号,首先一方面,它的每一章开头都会罗列出各个章节的大纲规定的一切定理,并适当选取例题来理解这些原理,这是其确实基础的一方面;另一方面,它虽基础,却并不简单,这主要体现在后面各个题型上,做起来还是有一定难度的。所以说,李哥哥的全书基础但也并不基础,但是对数学基础一般或较差的,依然推荐此书。此书具有一定的系统性,是正确做题快速解题必备良药。 2.灯哥哥的指南,显得不那么基础,没有那种明显的递进式的模式,有些时候对技巧的以来有些过(比如微分方程这一章中,指南介绍的微分算子法,其实对于考研真题,书中介绍的正常思路方法完全可以快速解决问题,所以个人觉得,微分算子法,相对来说有点鸡肋,会增加考生的学业负担,当然如果你真的掌握了,也是种好方法),个人觉得,这个书在介绍中值定理证明,泰勒公式运用,不等式证明,积分不等式证明上,比李哥哥要归纳的好,这部分内容我就是看的灯哥哥的,没看李哥哥的。这本书,不会显得那么繁琐,感觉比较干脆,对于那些数学基础相对较好的可能比较适合,如果数学基础不是很好,不推荐此书。(在此,只就李哥哥的全书做复习计划) 为数学苦闷,犹豫,没自信的进 相信还是有很多同学在为数学苦恼,我也是其中的一份子,是基础十分薄弱的一份子。所谓实践出真知,所以给数学基础薄弱,现在还对数学很头疼的人分享下我的体会。 之前复习数学是个很痛苦的过程,啥都不会都得自己摸索,相信很多同学也都复习了好几个月,对于数学有那么一点感觉,但总是像徘徊在数学的大门外,可望而不可及的感觉。一看答案就会,自己一做就傻眼,哪怕是之前看过的题目。当然这个是很正常的,因为想做到熟悉是个长期的过程,何况考研数学包括了3门2学年的课程。遗忘不熟悉太正常不过。 现在还有25天,那么在这25天里我们可以做什么,这是要解决的问题。在之前复习时我一直对真题抱有一定的恐惧的心里,总觉得没复习好,怕做不好,终于在12月份开始做真题了,做了几套成绩一般,主要是翻书做不翻书做成绩相差很大,另外还有一个计算问题。这充分说明了最大的问题在于对知识点不熟悉成了主要问题,而不是几个月之前我们面临的对知识点不理解的问题。再做了几年真题之后,我觉得,真题的难度算是比较平稳,比全书里很多题要简单,有点像正态分布,大部分是中等难度。我觉得如果知识点不熟悉的话,在这25天还是可以有不小提高的。做法总结如下。 1 坚持。现在可能是心里波动比较大的时候,我自己是有体会,有时候觉得很郁闷,没几天了还老多不会,总觉得心里不踏实,有时候会想到放弃(当然只是想想)。但是其实应该有相当部分的同学也有类似的想法,其实事实就是有很多人在最后时刻放弃了。所以如果你能坚持下去,你至少是这相当一部分人的胜利者,等你走到最后你胜利的机会就因此而加大。 2 真题。不用去想别的啥啥书了,踏踏实实做真题。对于我们这个层次的人来说,我想说做真题是这样的,如果你实在是很多知识点记忆模糊,何苦要撑着想3个小时做个3,40分呢?翻书做吧,纯当自己练习,真题是最好的练习题。慢慢的做几套就会有感觉了。我觉得很多人复习到现在就快要到质变的时候了,这是最痛苦的一段,认真思考,仔细计算。

幼儿园课程自学指导书

《幼儿园课程》自学指导书 毛作祥编写 自学学时:64学时 推荐教材: 王春燕.幼儿园课程概论[M].北京:高等教育出版社,2007年第1版。 参考资料: 1.冯晓霞.幼儿园课程 [M].北京:北京师范大学出版社,2000年第1版。 2.朱家雄.幼儿园课程(第二版).上海:华东师范大学出版社,2011年版。 3.唐淑,孔起英.幼儿园课程基本理论和整体改革.南京:南京师范大学出版社,2010年版。 4.唐淑,孔起英.国外幼儿园课程.南京:南京师范大学出版社,2009年版。 5.唐淑.国外幼儿园课程.南京:南京师范大学出版社,1999年版。 考核方式:平时作业×30%+笔试(开卷)×70% 第一章幼儿园课程概述 一、本章自学内容及要求: ⒈理解课程概念的四个不同的类别:课程是教与学的内容;课程是教与学的计划;课程是学习者的经验;课程是各种活动。掌握幼儿园课程的概念及特点。 ⒉了解不同的分类标准会有不同的课程类型。理解学科课程、经验课程、综合课程、广域课程、活动课程、核心课程和隐性课程的概念。 ⒊理解幼儿园课程的类型。 二、重点与难点 掌握幼儿园课程的概念及特点;理解经验课程、广域课程、活动课程、核心课程和隐性课程的概念及隐性课程发挥作用的三个方面。理解幼儿园课程的类型 三、学习方法指导: 理论联系实际。 四、典型例题介绍: 1.名词解释:幼儿园课程。 幼儿园课程是实现幼儿园教育目的的手段,是帮助幼儿获得有益的学习经验,促进其身心全面和谐发展的各种活动的总和。 2.简述题:以课程组织形态为分类标准的课程类型。 课程组织是课程内容组织的简称,指在一定的教育价值观指导下,把课程的各种要素组织成动态运行的课程结构系统。

比较稳定的十种婚姻

现在人们时尚婚外情、一夜情,网恋、试婚、闪电式结婚和闪电式离婚。未进围城的想进去,在围城里的又想出来。于是,很多人认为婚姻家庭面临着前所未有的危机。 我认为婚姻家庭总体是稳定的,有十种类型的婚姻比较稳定。 一、思想传统型。夫妻受传统的婚姻家庭观念影响较深,女方重贞操,男方重名誉,从结婚之日起就希望白头偕老,和好百年。固守着“爱情专一”的最后一块领地,有色心而无色胆,不敢越雷池半步。当婚外情不期而遇时,能够理性对待,为了婚姻家庭忍痛割爱,拒绝婚外情:“君知妾有夫,赠妾双明珠。……还君明珠双泪垂,恨不相逢未嫁时。” 二、郎财女貌型。古时的理想婚姻是郎才女貌。当代女人的观念发生了变化,不重才而重财,未谈婚论嫁先问男方是否有房子车子票子。天生好色的男人在钱包鼓起来之后更喜欢国色天香。一种新型的婚姻关系——郎财女貌出现了。美女傍大款就属这类婚姻。男女各取所需,婚姻处于相对稳定状态。等到老婆色衰爱弛,或因为已生儿育女亲情难以割舍,或因为老婆已掌握着一部份或大部份资产,财产分割有困难等原因,老公即使出轨,甚至外面有多个情妇,也不敢轻易抛弃发妻。这就是所谓的“家里红旗不倒,外面彩旗飘飘。”这类婚姻白领阶层居多。 三、知足常乐型。夫妻双方都比较容易满足,小富即安,知足常乐。这是农民和小市民的普遍心理。有这种心态的女人不与别的女人的老公攀比,不容易受有钱男人的诱惑。男人则容易满足于现状而不思进取,没有多大的权力和钱力,不具备与别的女人上床的条件。知足常乐的夫妻一般能够长相厮守。 四、生儿育女型。“悠悠万事,无后惟大”。受旧传统观念的影响,在农村和边远山区现在仍有相当一部份男人讨老婆的目的是为了生儿育女传宗接代。妻子若能为丈夫生一男半女,目的既已达到,夫妻关系也随之稳定下来。 五、求真务实型。结婚一段时间后,激情和浪漫慢慢降温。面对柴米油盐,锅碗瓢盆,生儿育女等日常琐碎的事情,夫妻能够本着求真务实的态度,共同打理好家务事,努力造营幸福和谐的家庭氛围。这种求真务实的婚姻比那种激情浪漫的婚姻反而更加牢固。参考https://www.wendangku.net/doc/1214202007.html,/HUNYINTYPE.html 六、懦夫悍妇型。一些男人虽然有才干,事业有成就,讨个老婆是“河东吼”,得了“惧内症”。别看他在部属面前是威风凛凛的大丈夫,在老婆面前却是个懦夫,见到老婆就像老鼠见到猫,被老婆管得服服贴贴的,下班晚一点回家还要遭老婆的拷问,岂敢终夜不归在外面泡妞?老公若是提出离婚,老婆就操起一把菜刀气势汹汹地说:“我先把孩子杀了咱们再离吧。”吓得老公屁滚尿流,赶快跪地求饶,连说不敢不敢。如此婚姻,老公一直被老婆牵着鼻子从结婚的红地毡走向坟墓。 七、委曲求全型。夫妻双方一方出轨,另一方为了声誉为了子女而委曲求全。或是老公经常对老婆使用家庭暴力,老婆忍气吞声,逆来顺受。或是一方缺乏家

元明清文学自学指导及作业-王素美

元明清文学课程自学指导及作业 第一章元代文学 1、简述关汉卿杂剧的艺术成就。 答:关汉卿的剧作在内容上涉及多种多样的社会层面和人物,并深刻地揭示了社会的黑暗面,表达了对恶势力的批判与憎恨;集中反映了社会中受压迫的弱者的生活遭遇和生活理想,热情赞美他们的美好品格;在反映社会对弱者的压迫的同时,始终表现出顽强的斗争精神和对美好人生的执着追求。这是关汉卿剧作的可贵之处,同时也是关汉卿之所以成为戏剧大家的一个重要因素。艺术上,关汉卿的杂剧故事复杂,情节曲折,引人入胜,每个情节都经得起推敲,丝丝入扣;人物性格富有个性,极少概念化、模式化色彩,因此,为中国古代戏曲人物画廊提供了大量栩栩如生的形象,如窦娥、赵盼儿等,直至今天,仍为大家所熟知;语言既切合人物的身份,又贴近当时口语,是“本色派”代表。这些特点,特别是塑造人物的本领,使他成为中国古代戏剧成就最高的剧作家。 2、简述诸宫调的概念。 答:所谓“诸宫调”,指取向一宫调的若干曲牌联成首尾一韵的短套,再用不同宫调的短套联结成长篇的说唱体文学形式,它由韵文与散文两部分组成,采用歌唱与说白相间的方式演说故事,基本上属于叙事体,但它的唱词中有接近代言的成分,对戏剧艺术的发展有重要影响。据传,其首创者是北宋末年的民间艺人孔三传。《西厢记诸宫调》是现存唯一部完整的诸宫调作品。 3、简述散曲的概念。 答:在元代,散曲一般称为乐府或词,有小令和套数两种基本形式。小令是单支的曲子,又叫“叶儿”,按不同的宫调曲牌创作,曲调不同,字数和句式也不一样。套数又称套曲,由两支以上同宫调曲牌的曲子连缀而成,曲牌间的联系有一定的顺序,曲词须一韵到底,结尾时有“煞调”或“尾声”。作为一种起源民间新声的音乐文学,散曲具有生动活泼、通俗易懂的特点,“文而不文,俗而不俗”,成为当时极为流行的雅俗共赏的新诗体。 4、简述元杂剧的概念。 答:元杂剧有称北杂剧,是在诸宫调和金院本基础上发展起来的成熟戏剧形式。主要特点: 1.由“四折一楔子”构成; 2.一折里用同一宫调的一套曲子; 3.楔子的篇幅叫段,一般放在第一折前交代剧情,起“序幕”的作用; 4.在表演上由一人主唱,如以正旦为主的戏里,只由正旦一人独唱到底,其它角色都不唱,只用旁白。 在金、元之交,北杂剧的创作就已达到相当高的艺术水平,著名的杂剧作家有:白朴、马致远、关汉卿等,多为金入元的文人。元杂剧的前期创作呈繁荣的局面,成为中国戏剧文学史上最为光彩夺目的黄金时代。 5、简述刘因山水诗的特点。 答: 6、论述《窦娥冤》的社会意义。 ⑴首先《窦娥冤》揭露了官吏贪脏枉法,冤狱层出不穷的黑暗现实。窦娥以年轻

外卖产品操作流程及标准 (1)

百度外卖产品操作操作流程 接单: 1:平台会提前一小时下单,(前期是电话下单,后期会接入点餐系统)门店在接单后制作产品,对产品按计量包装好后放入制定位置,平台骑手会在规定的时间进行取餐 2:后厨在接单后15分钟内必须出完所有产品,打包好后装入食品袋放入门店指定的位置。 产品范围: 6种锅底:菌王糊辣鸳鸯锅、菌王柠檬鸳鸯锅、菌王酸汤鸳鸯锅、菌王鲜辣鸳鸯锅、菌王养颜木瓜鸳鸯锅、菌王滋补鸳鸯锅、菜单上除果汁与果酒所有产品。产品标准: 菌王糊辣鸳鸯锅 1:配制好的成品菌汤,包装规格900克/袋,(含香菇片,鸡油,配制标准同现有的菌汤标准) 2:糊辣底料一袋,包装规格900克/袋(含配糊辣锅的辅料,如子弹头,灯笼椒,醪糟,冰糖等,搅拌均匀装袋,标准和现有的标准一样)

菌王柠檬鸳鸯锅 1:配制好的成品菌汤,包装规格900克/袋,(含香菇片,鸡油,配制标准同现有的菌汤标准) 2:柠檬底料一袋,包装规格900克/袋,(含香茅草、柠檬叶、鲜红小米辣、搅拌均匀装袋、配制标准同现有的柠檬锅底标准) 菌王酸汤鸳鸯锅 1:配制好的成品菌汤,包装规格900克/袋,(含香菇片,鸡油,配制标准同现有的菌汤标准) 2:配制成品酸汤900克(含香茅草、木姜子油、番茄片、香菜段,搅拌均匀装袋、配制标准同现有的酸汤锅底标准) 菌王鲜辣鸳鸯锅 1:配制好的成品菌汤,包装规格900克/袋,(含香菇片,鸡油,配制标准同

现有的菌汤标准) 2:鲜辣底料一袋,包装规格900克/袋(含鲜辣底料,高汤,泡小米辣,姜片,大葱,搅拌均匀装袋、标准和现有的鲜辣锅底标准一样) 菌王金汤鸳鸯锅 1:配制好的成品菌汤包装规格900克/袋,(含香菇片,鸡油,配制标准同现有的菌汤标准) 2:金汤锅底一袋,包装规格900克/袋(含,金汤底料,木瓜,枸杞,党参,当归,大枣,搅拌均匀装袋,标准和现有的金汤锅底标准一样) 菌王滋补鸳鸯锅 1:配制好的成品菌汤,包装规格900克/袋,(含香菇片,鸡油,配制标准同现有的菌汤标准) 2:配制好的成品滋补汤,包装规格900克/袋,(姜片,大枣,枸杞,鸡油,配制标准同现有的滋补锅标准一样) 打包器皿:

婚姻家庭社会学

1、家庭的特征是什么? 答案版本一:家庭是以婚姻和血缘关系为纽带,而“感情”是维系纽带的决定性因素(家庭始于婚姻关系,男女双方的姻缘关系衍生出了血缘关系,感情是现代家庭的基础);家庭需要以责任为支撑;家庭是生活共同体和经济共同体答案版本二:家庭是初级社会群体;家庭是靠某种纽带紧密联系的系统;家庭成员间有长期共同生活和经济上某种程度的共享;家庭有足够的韧性和稳定性;家庭是一个历史范畴 2、家庭的功能是什么? 家庭的功能指的是家庭在个人生活和社会生活中所起的作用。家庭具有①生产的功能(重要生产单位);②消费功能(基本的消费功能);③生育功能(唯一合法的社会人口生产单位);④教育功能(儿童初级社会化);⑤抚育和赡养类社会保障功能;⑥闲暇生活和情感满足的功能;⑦社会控制的功能;⑧其他功能; 家庭的负功能表现在:家庭对于社会发展以及家庭成员的成长具有的消极影响3、现代家庭的变迁表现在哪些方面? 答案版本一:婚姻价值观方面,以家庭为本转向以个人为本;家庭关系平等化、民主化、主轴由纵向亲子关系变为横向夫妻关系;家庭结构小型化、多样化;婚姻家庭稳定性减弱;家庭功能弱化,部分家庭功能转由社会承担; 答案版本二:家庭伦理重心的转移与代际利益冲突;结婚动机、择偶标准和结婚媒介的变化;离婚率上升与再婚人口增加;生育观念与家庭结构的变化;流动家庭大量增加;妇女家庭地位提高;性观念变化;家庭功能——由家庭走向社会 4、现代家庭存在的问题有哪些? 版本一:老年人赡养问题;独生子女教养问题;性观念呈多元状态,性越轨行为容许度增加;家庭关系淡漠,家庭冲突增多并呈显性化趋势; 版本二:家庭对性行为的社会控制功能在减弱,婚前和婚外性活动日渐活跃;婚姻生活质量不高;离婚率逐年上升,婚姻的平均社会寿命减短;婚姻“创新”引发家庭问题;老年人和独生子女问题 5、什么是家庭社会工作? 从社会工作专业的角度,结合我国家庭工作现实,家庭社会工作是以家庭为本的社会工作介入,既动员社会及家庭资源,促进家庭正常运转及发展的社会福利及服务。中国社工百科全书定义:家庭社会工作是为帮助解决家庭问题,增进家庭福利,更好地为实现家庭功能而进行的社会工作,特指以协助整个家庭为主旨的社会工作。 6、家庭社会工作的内容? (中国内地):中国内地许多家庭服务职能是由官方或半官方机构承担 家庭生活服务;面对家庭的教育与培训;家庭救助;家庭心理辅导 香港:咨询;家务服务;家庭生活教育;儿童照顾服务 台湾:经济协助;心理治疗;社会服务;制度配合 欧美:简介服务——分类转介,综合调整;直接服务——开发服务(社区、小团体、个案),治疗服务(小组、个案及利用社区资源) 7、家庭社会工作者的使命和责任? 提供家庭服务,解决家庭问题,促进家庭成员的问题解决和个人成长,建立和谐家庭关系,增进家庭福利,促进家庭社会工作的研究和专业发展 8、家庭社会工作者的必备素质有哪些? 1、知识结构 ①学科知识——婚姻家庭知识、社会学、心理学、文化人类学等 ②制度知识——社会制度,行政、法律知识 ③技术知识——沟通技术、语言技术、模式方法等 ④经验知识——生活阅历、实践经验、文化习俗等 2、实践能力 ①技术能力——临床运用知识与技巧 ②文化能力——识别诊断家庭及其成员问题的文化背景和文化洞察力等 3、精神素质 ①社会责任感——尽职尽责,勇于承担 ②人文情怀——关爱、尊重、接纳等 ③稳定心理——冷静、沉着、耐心等 ④勇于挑战——勇于承担、创新 9、家庭社会工作和和谐社会构建有什么关系? 家庭是社会的细胞,是社会的基础,家庭和谐的实现是构建和谐社会的前提。 开展家庭社会工作有助于家庭成员的成长,家庭问题的解决和家庭功能的发挥,有效地展开家庭工作有助于构建和谐家庭关系,为实现和谐社会奠定基础。 目前,我国正处于由传统社会向现代社会中转型的关键时期,新的观念、新的生活方式在婚姻家庭方面带来了新的表现和冲突,新的婚姻家庭观念、伦理道德观念尚未建立,西方生活方式和文化又带来了一样的观念,给我国的婚姻家庭带来了诸多的新的问题和冲突,家庭矛盾的激化进一步影响家庭成员的正常成长和社会的动荡不安。因而开展家庭工作在此期间具有特殊的重要一。 10、家庭社会工作的现状及前景如何?

2012年陈文登复习指南习题详解高等数学(完整资料).doc

【最新整理,下载后即可编辑】 2012版陈文登复习指南习题详解 高等数学 习题一 1.填空题 ⑴设,则常数__ [解答] 由题意可得即 ⑵__ [解答] 且 又 由夹逼原则可得原式 ⑶已知极限,则 [解答]当时,由可得

原式同理可得 故原式 ⑷已知则__ [解答] 原式 ⑸已知函数则__ [解答] 又所以 ⑹__ [解答] 原式 ⑺设函数有连续的导函数,,,若 在处连续,则常数_ [解答] 为的阶无穷小,则 ⑻设当时,=

[ 解答] 由此可得, ⑼ __ [ 解 答] 原式 ⑽已知,则_,_ [解答] = 若极限存在则得故 2.选择题 ⑴设和在内有定义,为连续函数,且, 有间断点,则 必有间断点必有间断点 必有间断点 必有间断点

[解答]若连续,则也连续,与题设矛盾,所以应该选. ⑵设函数则是 偶函数无界函数周期函数单调函数 [解答]因为,所以,又为无界函数,当任意给定一正数,都存在时,使得,于是,故为无界函数,所以应该选. ⑶当时,函数的极限是 等于等于为 不存在但不为 [解答] 所以应该选. ⑷若函数在处连续, 则 的值是

[解答] ,则,所以应该选. ⑸极限的值是 不存在 [解答] 原式,所以应该选. ⑹设则值是 均不对 [解答] 原式解得所以应该选. ⑺设则的值为 ,,, 均不对 [解答] 原式,由可得,所以应该选. ⑻设则当时, 是的等价无穷小与是同阶但非等价无穷小 是比较低阶的无穷小是比较高阶无穷小

[解答] 原式,所以应该选. ⑼设 则的值是 [解答] 若原式极限存在,当时,由可得,所以应该选. ⑽设 其中 则必有 [ 解答] 原式 可得,所以应该选. 3.计算题 ⑴求下列极限 ① [解答] 原式

产品部产品上线操作流程及规范

产品部产品上线操作流程及规范 一、编写本流程和规范目的 为提升平台的整体形象以及消费者的用户体验,提升平台竞争力,便于产品部对产品上架操作的规范化、正规化,明晰与供应商的合作流程及规范,特制定此流程及规范。 二、本标准的适用范围 本流程及规范适用于产品部在主动选择或筛选供应商提供的产品是否符合平台要求,以及产品部在与意向供应商接洽时的具体操作内容方面。在产品的初选、评估到最后上线均适用与本流程及规范。 三、术语与定义(无) 四、招商工作中的内容与规定 1.招商工作流程

2.在平台上线产品必须为平台可经营的产品 平台可经营种类为:农副产品、水果、预包装食品、进口酒类、国产酒类、非酒精饮料及茶叶、电子产品、日用百货的销售、礼品鲜花、小饰物、小礼品。平台销售的产品主要为农副产品、水果、预包装食品及中高端生活类用品。尤其以绿色生态农产品及其加工制品为主要发展方向。 3.供应商资质必须符合平台的标准 主体:与四翁合作主体必须为国家法律承认的企业法人或其自然人代表。生产企业名优企业优先。 资质:与四翁合作主体需向四翁提交营业执照、税务登记证(地税、国税)、商标注册证、组织机构代码证及其它必须的相关许可。 产品:产品有较强的市场卖点及售价优势,适合于互联网销售及物流运输。并提供产品的宣传图样若干,及产品详细信息(类似于淘宝及京东商城样式)。 五、职责与权限 1.商品上线前供应商需提供的资料及其他相关事宜 1.1 供应商需提供给平台需上线的产品图片,具体要求如下:600*600Px 主图1-3张(高清无码,无不相关水印、logo),产品详情图3-6张(无不相关水印、logo,宽与高500px*1500px,像素达到72的宝贝描述详情图),必须与所销售产品实物相吻合且附带产品介绍的文字资料。所有图片必须为高清图片,创意艺术拍摄并精修,图片明亮美观,能激起顾客的购买欲望,手机拍摄像、未处理照片不予采纳。 1.2 产品详情图中需包含产品的产地、主要成分、产品规格、产品保质期、使用说明及禁忌。图片清晰美观,布局合理。 1.3 为保证平台的美观及整体档次,平台有权利对产品形象不合格的产品予以下架或不上架处理。供应商无法提供合格图片的,可委托平台协助拍摄处理产品图片,费用由供应商承担。 1.4 产品包装符合物流运输要求,安全性强,稳定性高,避免运输过程中发生损坏。 1.5 产品上架前,供货商需向平台提供不少于2个购买单位的商品体验装,以便于平台了解体验此产品。体验装必须与供货商所提供给平台销售的

相关文档