`

ruby 笔记

阅读更多
  • ruby的核心
  • ruby的platform
  • ruby的表达式 操作符和控制流

 

  • ruby的platform

范畴 api 注释
String

[] index sub gsub match

参数中可直接使用regexp
split partition chomp strip
Regexp  =~ split sub gsub
$~ $1 $& [] 线程和method安全
Time Date

Time.now Time.local(2007, 7, 8)

t.strftime("%Y-%m-%d %H:%M:%S")

也可以utc
require 'parsedate'; include ParseDate
Collection each each_with_index
collect find select(find_all) reject inject
inject起到了reduce一个array的作用
sort sort_by group_by(key相同的元素组成一个array)
include? grep
key? value? merge(update) invert inspect
File basename dirname split
exist? directory? stat
open delete utime rwa[+] 用a或者a+即可
Dir chdir entries("dir") foreach("dir")
[] glob
I/O readline each lineno read
puts printf write
networking

s = TCPSocket.open(host, port)

s.gets

s.close

require 'socket'

server = TCPServer.open(port)

client = server.accept

client .puts

client.close

 

server = TCPServer.open(port)

sockets = [server]

ready = select(sockets)

readable = ready[0]

readable.each {|socket|}

require 'net/http'

http = Net::HTTP.new(host)

headers, body = http.get(path)

 

 

 

11. Threads and Processes

ruby的线程 建立在ruby interpreter中 ,同os的线程没关系。这一点类似java虚拟机,就是一个进程里面跑着n个线程。

 

A. 创建线程

Thread.new(*args) {|args| block}

threads = []
for page_to_fetch in pages
  threads << Thread.new(page_to_fetch) do |url|
    puts "share: " + page_to_fetch + ' ' + url
  end
end
threads.each {|thr| thr.join }

 

除了block内的local变量 ,所有线程共享全局、实例和local变量。

 

B. 线程操控

Thread.join, Thread.list

Thread.current[]= 可保存block内变量,并被其他线程访问,使用方法类似hash。

 

 

 

 

分享到:
评论
1 楼 hlily2005 2008-07-24  
threads = []
for page_to_fetch in pages
  threads << Thread.new(page_to_fetch) do |url|
    puts "share: " + page_to_fetch + ' ' + url
  end
end
threads.each {|thr| thr.join }

相关推荐

    ruby笔记1ruby笔记1ruby笔记1

    标题中的"ruby笔记1ruby笔记1ruby笔记1"暗示了这是一份关于Ruby编程语言的学习笔记,可能包含了作者在学习过程中的重点、难点以及心得体验。描述中的内容重复了标题,进一步强调了这是关于Ruby的深入学习记录。标签...

    ruby学习笔记

    ruby基础笔记,自学笔记,ruby基础语法非常全面ruby基础笔记,自学笔记,ruby基础语法非常全面

    ruby笔记2ruby笔记2ruby笔记2

    "ruby笔记2ruby笔记2ruby笔记2"可能是指一系列关于Ruby学习的笔记,这些笔记可能涵盖了Ruby的基础概念、核心特性以及进阶话题。在Ruby的学习过程中,理解和掌握以下几个关键知识点至关重要: 1. **面向对象编程...

    ruby笔记3ruby笔记3ruby笔记3

    在Ruby笔记3中,我们将会深入探讨这个强大的语言的各个方面,包括基础语法、类与对象、模块、方法、控制结构、异常处理、文件操作以及一些高级特性。 首先,让我们从基础语法开始。Ruby中的变量分为四种类型:局部...

    ruby-notes:Ruby笔记

    Ruby笔记 这是我学习Ruby的笔记,从2017年6月14日正式开始学。 表中的内容 方法 一个方法其实就是可以完成某些任务的功能块,可以多次被利用。 定义方法 一个方法可以包含参数,或不包含参数。 包含参数。 def say ...

    学习Ruby的笔记以及Demo源码.zip

    学习Ruby的笔记以及Demo源码.zip学习Ruby的笔记以及Demo源码.zip学习Ruby的笔记以及Demo源码.zip学习Ruby的笔记以及Demo源码.zip学习Ruby的笔记以及Demo源码.zip学习Ruby的笔记以及Demo源码.zip学习Ruby的笔记以及...

    小米Ruby 15.6寸EFI.zip

    小米Ruby的EFI配置文件就是为了让macOS能够识别并正确驱动小米Ruby的硬件。 【小米Ruby笔记本与macOS 10.14.5兼容性】 描述中提到“已验证Mac OS 10.14.5”,这意味着有人已经成功地在小米Ruby笔记本上安装了macOS...

    Ruby学习笔记

    这个暑假回家没事干闲的蛋疼,正好手头有一本《七周七语言》,然后就开始从Ruby学起,到scala结束。中间的Io和prolog就被华丽丽的跳过...我用xmind来记笔记,因此我只是把笔记搬到博客上,看看下面的图。好有爱啊!!!

    EFI-MacOS 10.15.7-XiaoMi Ruby-15.6.zip

    标题中的"EFI-MacOS 10.15.7-XiaoMi Ruby-15.6.zip"揭示了这个压缩包文件与MacOS操作系统、EFI(Extensible Firmware Interface)以及小米(XiaoMi)Ruby型号的15.6英寸笔记本电脑相关。EFI是苹果在Mac电脑上使用的...

    RubyStudy-master-ruby学习笔记

    学习 Ruby 的旅程即将开始! Ruby 是一种功能强大、灵活的编程语言,广泛应用于 Web 开发、脚本编写和系统管理等领域。下面是学习 Ruby 的一些实用建议:首先,了解 Ruby 的基本概念和语法。 Ruby 是一种面向对象的...

    Ruby自学笔记

    以上是Ruby自学笔记中提及的关键知识点的详细解读,如果要学好Ruby语言,深入理解这些基础知识是非常必要的。Ruby语言的这些特性与规则构成了其独特的编程范式,使得它在动态语言领域中占有一席之地。

    Ruby学习笔记(学习心得)

    Ruby学习笔记 01 类的属性与方法 02 访问控制 03 Container(Array/Hash) 04 Iterator 05 简单数据类型 06 范围 07 方法 08 条件控制 09 异常处理

    精华ruby学习笔记和代码

    这个笔记里包含了ruby的整型,字符串,浮点数,布尔等基础数据类型,还有数组,哈希hash的用法, 类的定义,函数方法,以及对象定义,其他高级用法解释,除了笔记记录的语法糖之外,还包含了一些解释性的代码,帮助...

    学习 Ruby 的笔记以及 Demo.zip

    本资源“学习 Ruby 的笔记以及 Demo.zip”显然包含了关于Ruby编程的学习资料和一些实际示例代码,旨在帮助初学者理解并掌握Ruby的基础及进阶特性。 首先,让我们深入了解一下Ruby的核心特性: 1. 面向对象:Ruby是...

    ruby on rails 笔记(陈刚)

    从给定的文件信息来看,这份文档是陈刚关于Ruby on Rails的学习笔记,旨在帮助初学者更好地理解并掌握Ruby on Rails这一流行的Web开发框架。以下是对文档中提及的关键知识点的详细解析: ### 安装与配置 #### Ruby...

    学习 Ruby 的笔记以及 Demo(简介、语言特性、应用场景、Ruby 注释、Ruby 文件的构造与析构语句Ruby 变量等)

    Ruby 学习笔记 1、简介 定义:一种简单快捷的面向对象脚本语言 开发者:松本行弘 开发时间:1995年 设计目的:A PROGRAMMER'S BEST FRIEND【程序员的最佳朋友】 文件扩展名:rb 2、语言特性 真正的面向对象编程语言 ...

    个人ruby学习笔记

    从给定的文件信息中,我们可以提炼出一系列关于Ruby编程语言的重要知识点,涵盖基础语法、变量类型、数值操作、条件语句、循环结构以及字符串处理等核心领域。 ### Ruby基础语法 #### 注释 Ruby提供了两种注释方式...

    Python库 | irb_kernel-0.1.1-py3-none-any.whl

    irb_kernel库的核心功能是提供了一个交互式解释器(IRB,Interactive Ruby)的内核,使得Python开发者可以在Jupyter Notebook或IPython环境中使用Ruby语言。IRB是Ruby的标准命令行交互工具,而irb_kernel将这个功能...

    小米Ruby15.6黑苹果12后适用的博通蓝牙驱动

    标题中的“小米Ruby15.6黑苹果12后适用的博通蓝牙驱动”表明了这个资源是为小米Ruby 15.6英寸笔记本电脑在安装了黑苹果(Hackintosh)系统,且操作系统版本更新至第12代之后设计的博通(Broadcom)蓝牙驱动。...

    Ruby_On_Rails笔记

    综上所述,Ruby on Rails的笔记内容涵盖了从安装Rails环境到创建和运行一个简单的Rails项目的基础知识,这些内容对于初学者来说是学习Rails框架的极好入门材料。通过对这些知识点的学习,初学者可以快速了解Rails的...

Global site tag (gtag.js) - Google Analytics