心情bert

永不言弃..

逝者如斯
网志分类
· 所有网志 (26)
最新评论
· 11/17 乖乖等我回来哦...
· 11/06 一个小小的建议...
· 11/06 亲爱的加油! ...
· 10/30 呵呵,差点到杭...
· 10/30 恭喜恭喜哇,巨...
· 10/28 呵呵,十年磨一...
搜索本站
友情链接
· 我的歪酷 非非共享界
· 俺家思雨
· 小黄
·

订阅 RSS

0004891

歪酷博客


bert @ 2008-11-26 18:33

计院楼下




















 
bert @ 2008-11-26 17:48

下午自己在学校照了几张照片,但看上去效果很差啊

首先是俺们计院楼





寝室楼下



 
bert @ 2008-11-15 00:10

今天亚军走了 估计要三周才能回来
祝福她工作顺利哈!


 
bert @ 2008-10-28 22:23

我的心永远地献给了WE2002
纵使现在的PS2画面多么逼真、场面多么真实,
在我心中,2002像是初恋一样,永远是最美好的,谁也别想替代...

从2002年9月第一次接触2002起,
已经数不清自己所玩过的场数。
利物浦联赛,
冠军杯,世界杯,美洲杯、欧洲杯、非洲杯....
巴蒂斯图塔、齐达内、奥科查、卡纳瓦罗、克鲁伊维特...
.....

6年过去了,生活的压力取代了当时的无忧无虑。
现在早已没有那时的激情。
但we2002陪我走过的日子、一个个难忘的夏夜通宵,
带来的欢乐、带走的忧愁,
永远珍藏心底。


 
bert @ 2008-10-27 13:43

发现自己有个不好的毛病:盲目的嗜书...
有时看到本好书,甚至自己不一定立即需要,脑袋里却一直盘旋着书的封面,有想买的冲动。
还好一般都抑制住了。
今天控制不住了,《UNIX进程间通信》,R.Stevens的遗著,
价格才四十多,又8折,纸张也较厚,
实在按捺不住,买下了影印版,
准备花9-10天左右迅速过一遍~~~


 
bert @ 2008-10-24 00:27

最近这短短的几天,对于我来说却似十分漫长。甚至决定了生命轨迹的某一小部分。
21号,
028-86618888(银河),TX送给我一个似是“添头”的offer;
而当天晚上,巨人网络宣讲.
现场投过简历,静静等待。
终于22:57分,028-86786666(皇冠)给了笔试通知,时间第二天早上9:30;而那时,另一个地方将在签约。
...
犹豫了片刻还是选择了笔试,破釜沉舟。

没有浪费我的选择。意料之中,笔试结果近乎完美。10月22日晚上21点半,接到了
028-86786666面试通知。

第二天,10.23日,晨10点28分。
我几乎是垂头丧气的从面试房间出来,脑袋嗡嗡作响:完了,两头都是空!
...
然后电视剧般的情形出现了:手机一阵震动,腾讯催签约的短信。
我心里突然又燃起了一丝希望..什么都不敢想,猛地冲进电梯,下楼打的直奔学校取三方协议。
按照短信中的地址,来到了办公大楼。

更戏剧的出现了:当我到了公司办公区,HR小姐正巧刚下楼吃饭去了。
就是这几分钟的蝴蝶效应。假如我早来了几分钟,假如我在楼下不曾犹豫就上去,她很可能还没走,偶一定是签了...

坐在休息室喝着茶,头脑逐渐清醒,一个声音在耳边回旋:不能签啊,否则会废了自己...
我猛地站起来,机械地奔向电梯,逃离这座楼
...
坐在
楼下的花坛边,我开始发愣:真的放弃了吗?今年形势这么严峻,难道不能签了再跳?可是,又真的要签吗?恐怕掉进这个职位,就再也爬不到研发岗!
时间一分一秒过去,看看表,快13点了,头脑里仍然是一片混乱,肚子竟然都不觉得饿。
终于咬咬牙,站起来梦游般地走开,背后的大楼离我越来越远,那只企鹅,也离我越来越远..

晚上,23:38分,
028-86786666再次光临,当听筒里传来“您好,这里是巨人网络,欢迎你明天1点半来皇冠假日参加签约仪式”,感觉像做梦了一般。

人生中如果总是这么多惊喜就好了,自己努力创造吧!


 
bert @ 2008-10-15 10:23

先是9月23的百度,首战失利,笔试就挂....

然后是淘宝和网易,都有面试机会,淘宝已经鄙视我,网易还没面,估计没戏;

再是腾讯,大牛,没抱什么希望只是来学习学习。
很意外笔试题非常基础,估计上了90分。
但是一面一塌糊涂,居然也有2面通知?更意外。
怀着一颗平常心,希望能借此涨点经验吧。

昨天的阿里巴巴笔试面试:
很惊讶他们的效率,上午笔试,中午就面试通知。下午好不容易在6点半二面结束,还是被鄙视了。有点冤,那人看我是数学院的,没项目经验, 就已经想打发我了。只问了一题我答的也很好,他反问:“你怎么知道这些的?”。我:“¥#@…*#”。他没再说,就随意搪塞几句让我回去了。
回来的路上精神一直很沮丧。


 
bert @ 2008-08-31 16:26

刚看过java线程,于是尝试着模拟一下经典的哲学家就餐问题。
总是看别人的还是不行,自己动手,收获要多一些。

下面这个最终结果,修改过几次。
比如关于wait()调用,开始没注意到调用它会释放
监视器,然后发现了。又想查一下jdk文档确认,诧异地发现没有释放监视器的说明。再仔细看一遍,原来是中文版把release错误地翻译成了发布...应该是释放
还有是死锁:开始的版本会发生5个人都拿起了左手的叉子...
后来改成如果拿右边叉子失败,释放左手的,不断重试
sleep函数也很重要,否则虽然运行正确,结果却很怪异

class Fork
{
    private boolean lockon;
    public Fork(){ lockon = false; }
    public boolean isLocked()
    {
        return lockon == true;
    }
    public synchronized void Lock()
    {
        while (lockon == true)
        {
            try
            {
                wait();
            }
            catch(InterruptedException e)
            {
                e.printStackTrace();
            }
        }
        lockon = true;
    }
    public synchronized void unLock()
    {
        lockon = false;
        notifyAll();
    }
}

class Philo extends Thread
{
    private char name; //哲学家的名字:A B C D E
    private static Fork[] forks = new Fork[5];//共用5根叉子
    private Fork left;
    private Fork right;
    static
    {
        for (int i=0; i<5; i++)
        {
            forks[i] = new Fork();
        }
    }
    public Philo(int i)
    {
        left  = forks[i];
        right = forks[(i+1)%5];
    }
    public void setMyName (char name)
    {
        this.name = name;
    }
    public char getMyName ()
    {
        return this.name;
    }
    public void getLeftFork()
    {
        left.Lock();
    }
    public boolean getRightFork() //确保拿了左筷子才拿右筷子,右不可拿则释放左筷子
    {
        if ( right.isLocked()) //破坏死锁四大条件之一:占有且等待
        {
            left.unLock();
            System.out.println(getMyName()+" put left fork");
            return false;
        }
        else
        {
            right.Lock();
            return true;
        }
    }
    public void putLeftFork()
    {
        left.unLock();
    }
    public void putRightFork()
    {
        right.unLock();
    }
   
    public void run()
    {
        while(true)
        {

            boolean succ = false;

            System.out.println(getMyName()+" is thinking");
            while (succ != true)
            {
                getLeftFork();
                System.out.println(getMyName()+" get left fork");
                if(getRightFork())
                {
                    succ = true;
                    System.out.println(getMyName()+" get right fork");
                }
                try{
                    Thread.sleep((long)(Math.random()*1000));
                    }catch (InterruptedException e) {
                    e.printStackTrace();
                    }
            }
            System.out.println(getMyName()+" is eating");
            try{
                Thread.sleep((long)(Math.random()*2000));
                }catch (InterruptedException e) {
                e.printStackTrace();
                }
            putRightFork();
            putLeftFork();
            System.out.println(getMyName()+" eaten done!");
        }       
    }
}
   
public class runPhilo
{
    public static void main( String[] args )
    {
        Philo[] philosopher = new Philo[5];
        char ch = 'A';
        for ( int i=0; i<5; i++)
        {
            philosopher[i] = new Philo(i);
            philosopher[i].setMyName(ch++);
        }
        for (int i=0; i<5; i++)
        {
            philosopher[i].start();
        }
        System.out.println("Main thread is running");
    }
}