针对近期外界声称“腾讯开始试水SNS市场”这一说法,腾讯称,这是一个误会,因为“腾讯一直做的就是SNS”。

腾讯互联网业务系统执行副总裁吴宵光认为,由于facebook的兴起,人们以为像校内网那样填写真名、上传真照片才是真正的SNS,这是把SNS的定义狭窄化了。阅读全文
IE浏览器,随便点一个东西,都是从新窗口打开,怎么办啊?我是普通的XP自带的浏览器,问题补充:是很普通的XP自带的
我就是不想老是同新窗口打开啊
有办法吗?
答案:
呵呵 ,是ie7或者以上的版本吧?你想让点开的网页在新的选项卡中显示,是不是?
打开ie——工具——常规——选项卡——设置——遇到弹出窗口时——选择始终在新的选项卡中打开弹出窗口
或者:
打开ie——工具——常规——更改网页在选项卡的显示方式
各位大侠,现小弟想做一个220VAC输入2000W的温控器,但需用可控硅进行温度精确控制的,请问如何实现,以及如何对可控硅进行选取?如有相关资料也可以!!!请各位大侠不惜赐教,指点迷津!


如果对频率要求不高,只要用普通可控硅,要注意它的额定功率,额定电压,额定电压大于220v,如果输入正弦波电压,额定功率大于1274w 阅读全文
尽管"翻页Flash相册多彩版"功能全面,但是制作一个令人惊叹的的翻页相册却是十分简单的,您要做的仅仅是添加您的照片,并选择一个合适的模板就可以了。我们针对重大节日制作了生日,结婚,节日等模板,您也可以制作自己的模板以重复利用或共享给他人。阅读全文
在VMWARE下安装完了LINUX,默认的分辨率是800*600,在linux的"显示设置"里怎么改然后重新启动或注销都没有变化,要想改变linux的分辨率,必须安装vmware tools,具体过程如下:
1.在VM下拉菜单里有一选项Install vmware tools,你必须先启动你的虚拟机,不然选项是灰色的,不可用。启动之后点击他,在你的limux的/tmp目录下就会出现一个叫vmware-linux-tools.tar.gz的包。
2.解压缩这个包在当前的目录,会产生一个vmware-tools-distrib的目录。
3.在终端输入init 3,切换到命令行模式。
3.运行vmware-install.pl 文件,然后一路回车,完了之后会,成功了会有一个分辨率的列表出来,选一个分辨率即可;
4.重新启动x-windows即可:init 5
然后,开始享受吧。
在很多人的心中,PC只是用于文字处理或者玩游戏的工具。但是PC能
做的绝对不只是这些。在合适的硬件,操作系统配置下,PC所能表现的,甚至超越数十万, 数百万的高级专业服务器。阅读全文
程序在得到一个Segmentation fault这样的错误信息毫无保留地就跳出来了,遇到这样的问题让人很痛苦,查找问题不亚于你N多天辛苦劳累编写代码的难度。那么有没有更好的方法可以在产生SIGSEGV信号的时候得到调试可用的信息呢?看看下面的例程吧!阅读全文
北京 sina 企业邮箱,老是需要重启(已经替换php掉了,rpc在salary上运行很正常,但是在freebsd上就有僵尸和无缘无故死掉的可能),可能是超时没有人连接:
转下面一个网路上哥们的文章,但是他没有提出解决方案,呵呵,等于没有说:阅读全文
网路
争夺封包(packet)的速度,除了网路卡好坏之外,最重要的还是作业系统跟 驱动程式,使用一样的网路卡salary >> FreeBSD > Linux >>> DOS+NCSA. 而且
FreeBSD 在 RPC 及 NFS 上都比 Linux 来的稳定及快速。毕竟 BSD 在网路
这方面是始祖
文章出处:DIY部落(http://www.diybl.com/course/6_system/linux/Linuxjs/2008620/127159.html)


之前 snnn 提的 FreeBSD RPC 实现的问题,我想我们需要抽时间来好好修整一下 userland RPC 库的代码。现在内核的 RPC 实现实际上是基于用户态 RPC 实现做的,并且 MT/MP safe,这样和 Solaris 里面的新版 TI-RPC 比,移植前者的代价要小一些,如果可能的话,我希望也能减少一些代码重复,不过大概看了一眼两边的接口,这边是 fd,那边是 so,除了消除全局和静态变量之外,其他部分恐怕也要多下功夫才行。

阅读全文
在ARM Linux上使用Apache+PHP阅读全文
当时还觉得rails就是冲着php的市场去的。。。现在反而觉得rails的思想拯救了php...

大家觉得是应该继续说服客户呢? 还是就用山寨rails了呢?



PHP和Python/Ruby的运行机制有一个本质区别:PHP是每次HTTP请求过来以后,初始化全部资源(例如创建数据库链接、加载系统类库,创建缓存等等),处理完毕,释放全部资源,这不像Python/Ruby之类带有GC的脚本语言,Python/Ruby是初次启动的时候初始化资源,随后的请求就不必再次初始化资源了。

这种机制的差异带来的区别就是:

1、PHP极难出现严重的内存泄露问题,随便你代码写的多烂,反正每个请求一执行完毕,所有资源统统释放光。而Python/Ruby则需要依赖GC来回收内存,因此稍有不慎,还是会出现GC无法释放的内存泄露问题。

2、PHP每次请求都要初始化资源,这个开销非常大。所以尽管PHP解析器本身的运行速度是极快的,但是一旦使用复杂的PHP框架,那么由于需要每次请求的时候初始化整个框架,性能的下降非常厉害,你用一个很复杂的PHP框架的结果就是整体性能被Ruby远远甩开。这也是为什么PHP社区这么多年来,并不怎么倾向于使用框架的原因之一。

3、由于PHP这种每请求初始化资源的机制,也造成了PHP添加跨请求的高级特性相当困难,这是PHP本身一个很大的限制,但是反过来说,正是这种限制使得PHP始终保持在一个比较简单的web语言上面,而正是这一点才是PHP得以成为互联网第一Web编程语言的原因,因此也未必就不好。

总之,PHP和Ruby的差异还是很大的,不适合放在一起比较,其实应该比较的是Ruby和Python才对。

所以我觉得Rails这种框架性做法被PHP跟风以后,其实是把PHP带上了邪路,所以不如说是Rails在误导PHP的发展。顺便多说一句:DHH在编写basecamp之前,一直是用PHP的,并且自己还写了一个PHP的快速开发框架,他改用ruby以后,把当初自己写的PHP框架也移植过来了,这个框架实际上是Rails最初的原型。那么为什么DHH当初不直接基于PHP做Rails呢?非要改用ruby以后,才发表rails呢?你看看PHP这种运行机制就知道了,PHP做复杂的web开发框架并不是一条光明的道路。 .
返回顶楼  
1.把C++当成一门新的语言学习(和C没啥关系!真的。);阅读全文
如果纯粹比较数字或字符,建议使用switch,因为它只会在一开始的switch括号中取出变量值一次,然后将这个值与下面所设定的case比较,但如果使用if,每次遇到条件式时,都要取出变量值,效率的差异就在这儿。例如:

if(a == 1)
    //...
else if(a == 2)
    //...
else if(a == 3)
    //...

这个程序片段在最差的状况下,也就是a = 3时,共需3次比较,而每次比较都必须取出变量a的值一次。如果换成switch:

switch(a)
{
    case 1:
        //...
        break;
    case 2:
        //...
        break;
    case 3:
        //...
        break;
}

在这个程序片段中,只在开头switch的括号中取出变量a的值,然后逐一比较下面的case,效率的差别就在这儿。当然并不是使用if就不好,遇到复合条件时,switch就帮不上忙了,由于无法在switch中组合复杂的条件语句,这时就得使用if了。简单地说,if与switch两者可以搭配着灵活使用。
要用FAST-CGI模式,还要用非线程的PHP版本,但是ZEND 还没有NTS的PHP版本,,,唉!
http://forums.iis.net/t/1160823.aspx

zendcore是好东西,在win下,跑fastcgi。但我不是很喜欢这种集成的系统。我用2003跑fastchi,用nts版的5.2.4,运行的很好,但就是装不上ZendOptimizer,甚至把zendcore里面的ZendOptimizer.dll复制过来,把zendcore里面php.ini的[zend]参数复制到系统的php.ini,一样不能正确运行zo。
请问在win2003,iis6下跑fastcgi,用nts版本的php,怎么才能安装zo?

据专家近日评测报道,通过他们的实际测试发现,Windows Server 2008下的web应用程序性能可获得不错的提升。例如Windows Server 2008下通过FastCGI实现的PHP支持,对比Linux操作系统的PHP支持,可获得更快的运行速度。

点击在新窗口中浏览此图片
通过以上图表可以看出,基于Windows Server 2008的PHP性能在用户介于200至3000范围时提升较为明显,但是在用户数达到4000的时候,Linux略有超出。总体而言,Windows Server 2008下的性能更为良好。

这些结果证明了Windows Server 2008的核心服务完全超出了预期,基本上不需要做出调整已经可以满足性能需求。



我想用DS18B20做一个测温电路,但是DS18B20固有的分辨率是0.5度,怎样用编程的方法使它的分辨率提高到0.1度,DS18B20的最高分辨率为0.065度.

回复:怎样提高DS18B20的精度
18B20最小分辨力是0.0625,把12位用int读出来除以16就行了

回复:怎样提高DS18B20的精度
我现在做的就是显示小数点后1位。

回复:怎样提高DS18B20的精度
哈哈,楼上的朋友把精度与分辨率混为一谈了。
    DS18B20的测温精度是0.5度,分辨率是0.0625度。分辨率可以人为改变,测温精度是不能变的。

回复:怎样提高DS18B20的精度
楼上说是对,精度和分辨率是两回事。
但我还是没有看明白楼主的意思



选一款PT100,再选一款仪表,建议宇电的ai-708t
具体应用时标定。或PT100加XTR105加ai-708t那样分辨率更高。如果你们公司有标定环境,就好办。如果没有,那我感觉不太好办。给我的感觉0。1度的精度很高,虽然我们用的分辨率大于0。01度。
还有ai-708有数字标定功能,他们的精度都是0。2或0。5级的,工业环境。
         前些日子访问O-blog 首页就看见了了了数字:"谁终将声震人间,必长久深自缄默;谁终将点燃闪电,必长久如云漂泊。就让我们只留下回忆!"。在论坛中管理员风色的答复是:"因为学业上的问题,我得离开一些日子。2.7暂时不开发了,不过如果现在的版本出现 BUG 或者安全漏洞,我会及时给出补丁。谢谢大家关注。O-blog 并没有死亡。 …… 因为离开的时候会比较长,比较长,比较长......"
http://topic.csdn.net/u/20070929/14/b183cd03-d780-4c59-a666-ab127f12f7b1.html

#include <stdio.h>

void sift(int a[], int i, int n)/* i为根节点,n为节点总数 */
{
  int child, tmp;

  for (tmp = a[i]; n > 2 * i; i = child)
  {
    child = 2 * i;     /* i的左孩子为2*i,右孩子为2*i+1 */
    if ((child != n-1) && (a[child+1] > a[child]))     /* 让child指向孩子中较大的一个 */
    {
      child++;
    }
    if (tmp < a[child])/* 如果孩子节点大 */
    {
      a[i] = a[child];/* 交换孩子节点和根节点 */
    }
    else
      break;
  }
  a[i] = tmp;    /* 将根放在合适位置 */
}

void heapsort(int a[],int n)/* 对a[1...n]进行排序 */
{
  int i, tmp;

  for (i = n / 2; i >= 0; i--)/* 建立初始堆 */
  {
    sift(a, i, n);
  }

  for (i = n - 1; i > 0; i--)/* 进行n-1趟排序 */
  {
    tmp = a[0];      /* 交换堆顶元素和最后一个元素 */
    a[0] = a[i];
    a[i] = tmp;
    sift(a, 0, i);    /* 将a[1..n-1]重建为堆 */
  }
}


int main(int argc, char* argv[])
{
  int a[7] = {8,9,3,5,1,6,4};
  int i;

  heapsort(a, 7);

  for (i = 0; i < 7; i++)
    printf("%d  \n", a[i]);


  return 0;
}





#include <stdio.h>

#define PARENT(i)  i >> 1
#define LEFT(i)    i << 1
#define RIGHT(i)   (i << 1) + 1
#define HeapBase   1
long HeapSize = 0;

void Exchange(long* a, long* b)
{
        long t = 0;
        t = *a;
        *a = *b;
        *b = t;
}

void MaxHeapify(long* Ary, long i)
{
        long l = LEFT(i);
        long r = RIGHT(i);
        long largest = 0;

        if (l <= HeapSize)
        {
                if (*(Ary + l) > *(Ary + i))
                        largest = l;
                else
                        largest = i;
        }
        if (r <= HeapSize)
                if (*(Ary + r) > *(Ary + largest)) largest = r;
        if ((largest != i) && (largest >= HeapBase) && (largest <= HeapSize))
        {
                Exchange(Ary + i, Ary + largest);
                MaxHeapify(Ary, largest);
        }
}

void BuildMaxHeap(long* Ary)
{
        long i = 0;
        for (i = HeapSize / 2; i >= HeapBase; i--)
        {
                MaxHeapify(Ary, i);
        }
}

//Ary[1..n]
void HeapSort(long* Ary, long dwSize)
{
        long i = 0;
        HeapSize = dwSize;
        BuildMaxHeap(Ary);
        for (i = dwSize; i >= HeapBase; i--)
        {
                Exchange(Ary + HeapBase, Ary + i);
                HeapSize--;
                MaxHeapify(Ary, HeapBase);
        }
}

int main()
{
        long a[4] = {0};
        a[1] = 2;
        a[2] = 1;
        a[3] = 8;
        HeapSort(a, 3);
        printf("%ld\n", a[1]);
        printf("%ld\n", a[2]);
        printf("%ld\n", a[3]);
        return 0;
}
分页: 208/272 第一页 上页 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 下页 最后页 [ 显示模式: 摘要 | 列表 ]