summaryrefslogtreecommitdiff
path: root/fml/doc/ja/tutorial/internals/lock.sgml
blob: f02d3baf0874a738ed7bf450c812b8daecd70e19 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
<!--
   $FML: lock.sgml,v 1.4 2004/10/06 09:07:39 fukachan Exp $
-->


<chapter id="lock">
	<title>
	���å�
	</title>

<para>
�ץ������֤�Ʊ�����ϥ��å����Ѥ��ƹԤʤ��ޤ���fml8 �ǥ��ݡ��Ȥ���Ƥ�
����å��ᥫ�˥���� flock(2) or lockf(2) �򸵤ˤ������å������ΤߤǤ���
</para>


<sect1 id="lock.overview">
	<title>
	���å��γ���
	</title>

<para>
�ʤ��餯 giant lock �Ǥ�������2003/03 �� giant lock ��ʤ����ޤ�����
</para>

<para>
���ߤǤϡ����������ʤ꥽�������Ȥˡ����å������ͥ뤬�Ѱդ���Ƥ��ޤ���
</para>

<para>
���Ȥ��С�Mail::Delivery ��Ϣ�ϥ��С��ꥹ�Ȥ˥�����������Τǡ�����
�����ȥ��å���ɬ�פǤ���
</para>

<para>
Mail::Delivery::SMTP �����κݤˤϥ��С��ꥹ�ȤΥ��å���ɬ�פǤ���
���ߤϡ�Mail::Delivery::SMTP ��ƤӽФ� FML �Υ��饹(�¤� FML::Send �� 
FML::Process::Delivery �Σ��սꤷ���ʤ�)����ǥ��å������򤷤Ƥ��ޤ���
</para>

<para>
������Mail::Delivery::Queue �ϸ������ (mailq ���ޥ��)������������
ǽ�ʤ�Τ����ʤΤǡ����å��Ϲͤ��ʤ����ɤ��Ϥ��Ǥ���
</para>

<para>
�����ơ�write lock �Ȥϸ¤�ʤ��������̤� map ��Ȥ��⥸�塼��ˤ�
���å���ɬ�פǤ���write ��ɬ�פȤϸ¤�ޤ���
���Ȥ���
FML/Command/UserControl.pm 
��
FML/Command/Auth.pm
�ˤ� write lock ��ɬ�פǤ�����
FML/Credential.pm
�� read lock �����Ǥ褤�Ǥ���
</para>

<para>
�������ʤ��顢���ޤΤȤ��� reader writer lock �ϼ�������Ƥ��ޤ���Τǡ�
�꥽�������Ȥκ٤������å������ critical region �λ��֤�û������褦
�ˤʤäƤ��ޤ���
</para>

</sect1>


<sect1 id="lock.todo">
	<title>
	TODO
	</title>

<para>
*_maps ���֤ޤ��ˤ� MUTEX �ǥ��å��򤹤롣���䡢��ꤹ�����⤷��ޤ���
</para>

<para>
���С��ꥹ�Ȥ� IO::Adapter �򤫤ޤ����ˡ�
READER WRITER LOCK ���ۤ�����
<footnote>
<para>
READ ���å������פ������䡢�������
chaddr ������� sleep �������Ԥ��䤫��;)
</para>
</footnote>
perl thread ��Ĥ����ФǤ��뤱�ɡ�
����Ū�ʼ����Ϥ��ʤ��Ĥ������ݤ�;)
</para>

</sect1>


</chapter>