`
cloud21
  • 浏览: 390484 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表

线程通信

不同线程间进行通信通常有两种简单方法: 方法一 通过访问共享变量的方式(注:需要处理同步问题) 方法二 通过管道流 其中方法一有两种实现方法,即 方法一a)通过内部类实现线程的共享变量 代码如下: public class Innersharethread { public static void main(String[] args) { Mythread mythread = new Mythread(); mythread.getThread().start(); mythread.getThread ...
关键字: 发展, 职业 1、放弃 把握的反面就是放弃,选择了一个机会,就等于放弃了其它所有的可能。当新的机会摆在面前的时候,敢于放弃已经获得的一切,这不是功亏一篑,这不是半途而废,这是为了谋求更大的发展空间;或者什么都不为,只因为喜欢这样做,因为,年轻就是最大的机会。人,只有在三十岁之前才会有这个胆量,有这个资本,有这个资格。 2、失恋 不是不在乎,是在乎不起。三十岁前最怕失去的不是已经拥有的东西,而是梦想。爱情如果只是一个过程,那么正是这个年龄应当经历的,如果要承担结果,三十岁以后,可能会更有能力,更有资格。其实,三十岁之前我们要做的事情很多,稍纵即逝,过久地沉溺在已经干涸的爱河的河床中, ...
Java和C最大的不同是在于Java的可伸缩性Scalable,能够平滑发展到分布式云计算平台,通过云计算能够处理不断增长的业务访问量,这个代价过程是非常小容易的。 那么在单机环境下,Java过去一直被认为低于C程序,最近老外做了一个实验,进行了比较: String Hash案例: Complete C++ code: http://pastebin.com/d280c1cd4 Complete Java code: http://pastebin.com/m541c4655 主要核心程序如下,是一个循环: int h=0;  for( int i=0; i<len; i++ )   ...
package java.lang; import java.io.PrintStream; import sun.misc.VM; /** * * 用于处理一组线程的类 * 它是一种树状结构,他的下层节点还可以是ThreadGroup对象 * * comment by liqiang * */ public class ThreadGroup { //父级的线程组对象 ThreadGroup parent; //线程组的名字 String name; //线程组的最大优先级数,线程组所含线程不得超过此 ...
提示 1:清理残余的配置文件 一般而言,当我们从 Ubuntu 系统中删除了一个软件之后,该软件的残余配置文件并没有被删除。如果你确信以后不再使用该软件,那么保留其配置文件实在没有必要,所以我们大可一并删除之。 要删除某个软件的残余配置文件,可以执行下面的操作:    1. 在终端中执行 sudo synaptic,以便启动 Synaptic 包管理工具。    2. 点击 Synaptic 右下角的 Status 按钮进行切换。    3. 现在,你应该能够在 Synaptic 的左边看到 Not installed (residual config)。选择它即可在右边看到包含有残余配置 ...
最近重新再看<Inside JVM>,对JAVA编译成的字节码结构很感兴趣,希望找个工具能够对.class文件进行的解析和查看。没找到,倒发现javaassist可以对字节码进行操作和修改。此工具是JBOSS项目的一部分,JBOSS实现AOP的基础。呵呵,开眼界了,原来我们可以直接对字节码文件进行修改,哪怕不知道源文件(跟反编译完全不同)。一个简单例子: import javassist.*; class Hello { public void say() { System.out.println("Hello"); } ...
//常用的几个: ^[_/.0-9a-z-]+@([0-9a-z][0-9a-z-]+/.)+[a-z]{2,3}$ ^[_a-z0-9-]+(/.[_a-z0-9-]+)*@[a-z0-9-]+(/.[a-z0-9-]+)*$ ^(([0-9a-zA-Z]+)|([0-9a-zA-Z]+[_.0-9a-zA-Z-]*[0-9a-zA-Z]+))@([a-zA-Z0-9-]+[.])+([a-zA-Z]{2}|net|com|gov|mil|org|edu|int)$ ^([a-z0-9A-Z]+[-|//.]?)+[a-z0-9A-Z]@([a-z0-9A-Z] ...
    哈哈!其实这只是件很容易的事情,这里只是为了做一下记录,一边日后使用方便。     在命令行下键入如下命令: apt-get install libboost-dev libboost-dbg libboost-doc bcp libboost-*     运行完,boost就装好了。
Scribe is a newly released log collection tool that dumps log files from various nodes in a cluster to Scribe servers, where the logs are stored for further use.  Facebook describes their usage of Scribe by saying, “[Scribe] runs on thousands of machines and reliably delivers tens of billions of mess ...
自定义了个ClassLoader,用socket从一个server上获取class文件内容,然后创建一个类。tcp server是用erlang写的,只负责从硬盘读数据,然后传到自定义ClassLoader。特别注意的是,要想erlang socket跟java socket通信,gen_tcp:listen(Port,[binary,{packet,0}]),这里packet一定要为0,这个是erlang数据包的包头,通信的时候客户端跟服务端加的额外数据,跟java通信,是不能加的,否则会出现error msgsize这类的错误。-module(class_file_server). -ex ...
有 goto 关键字却不能用? getout:{ for (int i = 0; i < N; ++i) { for (int j = i; j < N; ++j) { for (int k = j; k < N; ++k) { break getout; // 打断循环跳到 OUT } } } } // OUT enum 可以当类写 // 出自 Sun 的例子(Sun 真的很喜欢太阳系,但他们不知道冥王星已经出局了么?) ...
Tomcat内存溢出的原因     在生产环境中tomcat内存设置不好很容易出现内存溢出。造成内存原因是不一样的,当然处理方式也不一样。     这里根据平时遇到的情况和相关资料进行一个总结。常见的一般会有下面三种情况:     1.OutOfMemoryError: Java heap space     2.OutOfMemoryError: PermGen space     3.OutOfMemoryError: unable to create new native thread.     Tomcat内存溢出解决方案     对于前两种情况,在应用本身没有内存泄露的情 ...
java.lang.OutOfMemoryError: PermGen space及其解决方法 1、 PermGen space的全称是Permanent Generation space,是指内存的永久保存区域OutOfMemoryError: PermGen space从表面上看就是内存益出,解决方法也一定是加大内存。说说为什么会内存益出:这一部分用于存放Class和Meta的信息,Class在被 Load的时候被放入PermGen space区域,它和和存放Instance的Heap区域不同,GC(Garbage Collection)不会在主程序运行期对PermGen space进行清理 ...
时光荏苒,时光匆匆走过了一个四年,回望过去四年我在谷歌的职业生涯,所有的快乐、成就以及曾经面对的困难与挫折,所有的这一切如同一部电影在我的脑海里不断地闪过。在这离别之际,我不禁百感交集。在这四年时光里 ...
    在 JDK 5.0 之前,如果不使用本机代码,就不能用 Java 语言编写无等待、无锁定的算法。在 java.util.concurrent 中添加原子变量类之后,这种情况发生了变化。请跟随并行专家 Brian Goetz 一起,了解这些新类如何使用 Java 语言开发 ...
Global site tag (gtag.js) - Google Analytics