T086ѧϰ�� | վ��ѧԺ | �����ĵ� | ���� | Ъ���� | IP��ַ��ѯ | �������� | ���ջ��� | �����ֵ� | ���ù��� | ������Ϣ��ѯ

dz��php��ʵ�ֶ��߳�

�� �������ߣ�kingerq ����ʱ�䣺2007-08-29 | ���壺�� �� С��
[����]PHP��ʵ�ֶ��߳�? ������������, ��һ����Ϊ�ҷ���..������ʵ����������ô����. �������ҵ�һЩ����, �Ѿ�ʵ����. ȷʵ���Ե�. ����֪��PHP�����Dz�֧�ֶ��̵߳�, �������ǵ�WEB��������֧�ֶ��̵߳�. Ҳ����˵����ͬ...

PHP��ʵ�ֶ��߳�? ������������, ��һ����Ϊ�ҷ���..������ʵ����������ô����.

�������ҵ�һЩ����, �Ѿ�ʵ����. ȷʵ���Ե�.

����֪��PHP�����Dz�֧�ֶ��̵߳�, �������ǵ�WEB��������֧�ֶ��̵߳�.

Ҳ����˵����ͬʱ�ö���һ������. ��Ҳ������PHP��ʵ�ֶ��̵߳Ļ���.

���������������е���a.php�����ļ�. �������ڳ�����������WEB������������һ��b.php

��ô�������ļ�����ͬʱִ�е�.

(PS: һ��������������֮��, WEB�������ͻ�ִ����, �����ܿͻ����Ƿ��Ѿ��˳�)

��Щʱ��, ���������еIJ�����һ���ļ�, ���DZ��ļ��е�һ���ִ���.����ô����?

��ʵ����ͨ������������a.php��������һ�γ���.

���濴һ������:

//a.php


PHP����:

<?php
    function runThread()
    {
        $fp = fsockopen('localhost', 80, $errno, $errmsg);
        fputs($fp, "GET /a.php?act=b ");        //�����ĵڶ���������HTTPЭ���й涨������ͷ
                                //�����׵��뿴RFC�еĶ���
        fclose($fp);
    }

    function a()
    {
        $fp = fopen('result_a.log', 'w');
        fputs($fp, 'Set in ' . Date('h:i:s', time()) . (double)microtime() . " ");
        fclose($fp);       
    }

    function b()
    {
        $fp = fopen('result_b.log', 'w');
        fputs($fp, 'Set in ' . Date('h:i:s', time()) . (double)microtime() . " ");
        fclose($fp);       
    }
    if(!isset($_GET['act'])) $_GET['act'] = 'a';
    if($_GET['act'] == 'a')
    {
        runThread();
        a();
    }
    else if($_GET['act'] == 'b') b();
?>


����result_a.log �� result_b.log �Ƚ�һ�������ļ����з��ʵ�ʱ��. ���һᷢ��, ��������ȷ���ڲ�ͬ�߳������е�.
��Щʱ����ȫһ��.

����ֻ��һ���򵥵�����, ���ҿ��ԸĽ���������ʽ.


��ȻPHP��Ҳ�ܶ��߳���, ��ô����Ҳ����, �Ǿ���ͬ��������. ����֪�� PHP�����Dz�֧�ֶ��̵߳�. ���Ը�������ʲô��

Java ��synchronize�ķ�����. �����Ǹ���������.

1. ����������ͬһ����Դ. �Ա�����ͻ. ���ǿ���ͬʱ�����ݿ�����. ��Ϊ���ݿ���֧�ֲ���������. �����ڶ��̵߳�PHP��

��Ҫ��ͬһ���ļ���д������. ��������Ҫд�Ļ�, �ñ��ķ�������ͬ��.. ������ flock���ļ����м�����. ��������ʱ�ļ�

�����������߳��еȴ������ļ�����ʧ while(file_exits('xxx')); �����͵���������ʱ�ļ�����ʱ, ��ʾ��ʵ�߳����ڲ���

����û���������ļ�, ˵�������߳��Ѿ��ͷ�������.

2. ������Ҫ��runThread��ִ��fputs��ȡ����socket�ж�ȡ����. ��ΪҪʵ�ֶ��߳�, ��Ҫ���÷�����ģʽ. ������fgets��

���ĺ���ʱ��������.. ���Զ�д���ݾͻ�������. ����ʹ������ģʽ�Ļ�, �����Ͳ����Ƕ��߳���. ��Ҫ�������ķ��ز�ִ��

�����ij���. ����������Ҫ���������������������ļ�������������. ʵ����Ҫ�Ļ�����socket_set_nonblock($fp) ��ʵ��.


˵����ô��, ����������û��ʵ�ʵ�������? ��ʲôʱ����Ҫ���������ַ����� ?

�����ǿ϶���. ����֪��. ��һ�����϶�ȡ������Դ��Ӧ����, �������ٶ���ƿ��. �����ɶ�������ʽ�Ϳ���ͬʱ�Զ����̶߳�

��ͬ��ҳ�����ж�ȡ.

��������һ���ܴ�8848��soaso��Щ�̳���վ������Ϣ�ij��򡣻���һ���Ӱ����Ͱ���վ�϶�ȡ��ҵ��Ϣ�͹�˾Ŀ¼�ij���Ҳ�õ�

�˴˼����� ��Ϊ��������������Ҫ���ϵ��������ǵķ�������ȡ��Ϣ�����浽���ݿ⡣ ���ô˼��������������ڵȴ���Ӧʱ��ƿ

����


���Դ���ש������ ϣ�����Ҷ�������~~~~~~~

  • ת����ע����Դ��ITѧϰ�� ��ַ��http://www.t086.com/ �����������Ƽ�������
  • �ر������� ��վ�������ر�������ֹת�ص�ר�������������¿�������ת�أ���������ע��������ԭʼ���ߡ����°�Ȩ������ԭʼ�������С����ڱ���վת�����µĸ��˺���վ�����DZ�ʾ������л�⡣������վת�ص������а�Ȩ��������ϵ���ǣ����ǻᾡ�����Ը�����
  • ��
  • ��
  • ��
  • ��
  • ��
  • ��
  • ��
  • ��
  • ��
������ѯ Health Check Gulangyu
© 2017 T086ѧϰ�� - T086.com(ԭitlearner.com)
RunTime:17.77ms QueryTime:7