Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

ruby Ï̵߳ÄÐÔÄܲâÊÔ

ÔÚʹÓÃÖÐrubyµÄ¹ý³ÌÖÐÄÑÃâ»áÓöµ½Ìá¸ßÐÔÄܵÄÎÊÌ⣬Óɴ˱ãÏëÆðÁËrubyÏ̡߳£µ«ÊÇÎÒÔÚʹÓÃÖÐÈ´·¢ÏÖrubyµÄÏß³ÌÈ´²»ÄÜÌá¸ßÐÔÄÜ¡£ÎÒдÁËÒÔÏ´úÂ룬×öÁËЩ¼òµ¥²âÊÔ¡£
´úÂë
# -*- coding: GB2312 -*-
require 'date'
# ʹÓÃỊ̈߳¬Ï̵߳Ĵ¦Àí´úÂëÀïûÓÐsleep
def have_thread_no_sleep
p Time.now
thread1 = Thread.new do
a = 0
20000.times do |v|
a = DateTime.parse('1993-02-24T12:30:45')
end
p a
end
thread2 = Thread.new do
a = 0
10000.times do |v|
a = DateTime.parse('1993-02-25T12:30:45')
end
p a
end
thread = [thread1,thread2]
thread.each {|t| t.join }
p Time.now
end
# ûÓÐʹÓÃỊ̈߳¬Ï̵߳Ĵ¦Àí´úÂëÀïûÓÐsleep
def no_thread_no_sleep
p Time.now
a = 0
20000.times do |v|
a = DateTime.parse('1993-02-24T12:30:45')
end
p a
a = 0
10000.times do |v|
a = DateTime.parse('1993-02-25T12:30:45')
end
p a
p Time.now
end
# ʹÓÃỊ̈߳¬Ï̵߳Ĵ¦Àí´úÂëÀïÓÐsleep
def have_thread_have_sleep
p Time.now
thread1 = Thread.new do
a = 1 + 2
sleep 3
p a
end
thread2 = Thread.new do
a = 0
a = 1 + 2
sleep 2
p a
end
thread = [thread1,thread2]
thread.each {|t| t.join }
p Time.now
end
# ûÓÐʹÓÃỊ̈߳¬Ï̵߳Ĵ¦Àí´úÂëÀïÓÐsleep
def no_thread_have_sleep
p Time.now
a = 1 + 2
sleep 3
p a
a = 0
a = 1 + 2
sleep 2
p a
p Time.now
end
p "ûÓÐʹÓÃỊ̈߳¬Ï̵߳Ĵ¦Àí´úÂëÀïûÓÐsleep"
no_thread_no_sleep
p "ʹÓÃỊ̈߳¬Ï̵߳Ĵ¦Àí´úÂëÀïûÓÐsleep"
have_thread_no_sleep
p "ʹÓÃỊ̈߳¬Ï̵߳Ĵ¦Àí´úÂëÀïÓÐsleep"
have_thread_have_sleep
p "ûÓÐʹÓÃỊ̈߳¬Ï̵߳Ĵ¦Àí´úÂëÀïÓÐsleep"
no_thread_have_sleep

²âÊÔ½á¹ûÈçÏÂ
"ûÓÐʹÓÃỊ̈߳¬Ï̵߳Ĵ¦Àí´úÂëÀïûÓÐsleep"    ->     24Ãë
2009-12-02 23:03:11 +0800
#<DateTime: 1993-02-24T12:30:45+00:00 (4702162601/1920,0/1,2299161)>
#<DateTime: 1993-02-25T12:30:45+00:00 (4702164521/1920,0/1,2299161)>
2009-12-02 23:03:35 +0800
"ʹÓÃỊ̈߳¬Ï̵߳Ĵ¦Àí´úÂëÀïûÓÐsleep" -> 26Ãë
2009-12-02 23:03:35 +0800
#<DateTime: 1993-02-2


Ïà¹ØÎĵµ£º

ruby c++

While looking for information on the subject, I looked into the ONLamp article Extending Ruby with C by Garrett Rooney, the Extending Ruby chapter in the Pickaxe, README.EXT (located at /usr/share/doc/ruby1.8-dev/README.EXT.gz on my Ubuntu system) and got some help from Kjetil.
The resulting file c ......

ruby on rails(Ê®) ¶©µ¥´¦ÖÃ

¶©µ¥´¦Öã¬Ê×ÏÈÒªÓÐÒ»¸ö¶©µ¥µÄÏêϸÁÐ±í£¨°üÀ¨ÊýÁ¿£¬¼ÛǮɶµÄ£©ºÍÒ»¸ö¶ÔÓÚ¸öÈ˵ÄһЩÐÅÏ¢µÄÒ»¸ö±í¡£Òò¶øÎÒÃÇ´´ÔìÁ½¸öÄ£ÐÍ£¬line_item(ÁбíÏî),order(Áбí)£¬Æäºó±àÕßÈç´Î
/db/migrate xxx_create_order xxx_line_item
Ruby´úÂë
Ò».class CreateOrders < ActiveRecord::Migration
¶þ.def self.up
3. create_tabl ......

Ruby on Rails°²×°ÓëÅäÖÃ

Ò»£¬Ruby°²×°£º
http://rubyforge.org/frs/download.php/29263/ruby186-26.exe
¹Ù·½ÍøÕ¾ÏÂÔØruby186-26(for windows)£¬Ä¬Èϰ²×°ruby£»
·¾¶c:\ruby
¶þ£¬railsÏÂÔØ°²×°£º
http://rubyforge.org/frs/download.php/29361/rails-2.0.2.zip
ÏÂÔØrails2.0.2.zip£¬½«ÆäcopyÖÁruby°²×°Â·¾¶£¬²¢¸ÄÃûΪrails.zip£»
³¢ÊÔ²»½âÑ¹Ö ......

ÏëÕÒÒ»·ÝRuby on railsµÄ¹¤×÷,ÎÒÓ¦¸ÃÖªµÀÄÄЩ֪ʶ?

  ÐÂÄê¸Õ¿ªÊ¼,ÒѾ­ÓÐһЩÉúÃ͵ÄÅóÓÑÒª¿ªÊ¼ÐµÄÖ°³¡ÉúÑÄÁË,
²»ÖªµÀ»á²»»áÓöµ½ÕâÑùµÄÎÊÌâ: ÏëÕÒÒ»·ÝRuby on railsµÄ¹¤×÷,ÎÒÓ¦¸ÃÖªµÀÄÄЩ֪ʶ
?
     »¹ºÃ,ÎÒ²¢²»ÊÇÏëÖ¸µãÄãʲô,Ö»ÊÇÏë°´ÎÒµÄ˼ά·½Ê½Õ¹¿ª,ÈÃÄãÄÜ"ÎÅ"µ½µã¶«Î÷¼´³É.
¹ÅÔÆ:Öª¼ºÖª±Ë£¬°ÙÕ½²»´ù£»²»Öª±Ë¶øÖª¼º£¬Ò»Ê¤Ò»¸º£» ......

RubyµÄ×°ÊÎÆ÷ģʽʵÏÖ

class Tree
def initialize
puts "Make a normal tree"
end
def decorate
puts "Make sure the tree won\'t fall"
end
end
class RedBalls < Tree
def initialize(tree)
@parent = tree;
end
def decorate
@parent.decorate
puts "Put on some red balls"
end
end ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ