[转]webrtc学习:部署stun和turn服务器http://www.cnblogs.com/lingdhox/p/4209659.htmlwebrtc的P2P穿透部分是由libjingle实现的.步骤顺序大概是这样的:1.尝试直连.2.通过stun服务器进行穿透3.无法穿透则通过turn服务器中转.stun服务器比较简单.网上也有很多公开的stun服务器可以用于测试.例如stun.ideasip.com这里需要注意一下.我在做android应用时.在
系统 2019-08-12 09:26:58 2823
注:本文翻译自Google官方的AndroidDevelopersTraining文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好。原文链接:http://developer.android.com/training/basics/supporting-devices/languages.html将UI字符串从你应用的代码中提取出来,并将它们放置在一个外部的文件中是一个值得长期保持的习惯。Android使得这件事情变的简单,在每个And
系统 2019-08-12 01:55:22 2823
数据验证涉及到很多方面的东西,在当前的技术领域里,从技术上来看可以说是分为传统的验证(同步方式)和Ajax(异步方式)验证。如果从功能验证上来看的话就包罗万象了。比如非空验证,对等验证,格式验证等等。在.NET里还有专门用于验证的的几个常见验证控件,RequiredFieldValidator,RangeValidator,RegularExpressionValidator,CompareValidator,CustomValidator以及Valida
系统 2019-08-12 01:52:17 2823
POJ2262Goldbach'sConjecture(素数相关)http://poj.org/problem?id=2262题意:给你一个[6,1000000]范围内的偶数,要你将它表示成两个素数相加和的形式。假设存在多组解,请输出两个素数差值最大的解。分析:首先我们用素数筛选法求出100W以内的全部素数。筛选法求素数可见:http://blog.csdn.net/u013480600/article/details/41120083对于给定的数X,假设
系统 2019-08-12 01:51:25 2823
上一次说到类RenderThread和类RenderView把消息处理,那么这两个类是怎么样处理消息的呢?又是怎么样处理浏览的消息呢?现在就带着这两个问题去分析它的源码,理解它处理消息的方法。类RenderThread处理消息的代码如下:#001voidRenderThread::OnMessageReceived(constIPC::Message&msg){#002//NOTE:Wecouldsubclassrouter_tointerceptOnCo
系统 2019-08-12 01:33:36 2823
Tomcat下配置一个ip绑定多个域名http://pkblog.blog.sohu.com/68921246.html在网上找了半天也没找到相关的资料,都说的太含糊.本人对tomcat下配置一ip对多域名的方法详细如下,按下面配置一定能成功,经过测试了.
系统 2019-08-12 01:33:21 2823
最近安装过很多的软件突然发现tortoisesvn的改动后没有图标显示,在网上找了很长时间经过很长时间的尝试发现是注册表的问题现将解决方法总结如下1.window+R调出运行程序在框内输入regedit进入注册表2.在注册表中找到以下路径HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers3.删除红色区域之上的一些注
系统 2019-08-12 01:32:45 2823
tomcat环境变量的配置1.===>进入bin目录下,双击startup.bat看是否报错。一般肯定会报。2.===>右键我的电脑===>高级===>环境变量新建一个变量名为JAVA_HOME然后变量值是你的JDK的bin目录的上一层。再新建一个变量名为CATALINA_HOME变量值是你的Tomcat的bin的目录的上一层。3.===>进入Tomcatbin目录下双击shutdown.bat然后重复1的操作。看是否报错。应该不报了。4.===>进入ap
系统 2019-08-12 01:32:35 2823
当一个任务(进程)执行系统调用而执行内核代码时,称进程处于内核内核态,此时处理器处于特权级最高的(0级)内核代码中执行,当进程处于内核态时,执行的内核代码会使用当前进程的内核栈,每个进程都有自己的内核栈。当进程执行用户代码时,称其处于用户态,此时处理器在特权级最低的(3级)用户代码中运行。当正在执行用户程序而突然被中断程序中断时,此时用户程序也可以象征性地称为处于进程的内核态,因为中断处理程序将使用当前进程的内核栈。这与处于内核态的进程的状态有些类似。内核
系统 2019-08-12 01:32:21 2823
在昨天关于substring的blog中有如下一段代码:也许你已经发现,在Python3中其实有办法只用一行完成函数:复制代码代码如下:>>>defisSubstring2(s1,s2):returnTrueifs2.find(s1)!=-1elseFalse但是。。。还可以更简单吗?如何更简单使用Python表达条件语句呢,justforfun:)一种做法是使用列表索引:复制代码代码如下:>>>defisSubstring2(s1,s2):return[
系统 2019-09-27 17:38:34 2822