るりまサーチ

最速Rubyリファレンスマニュアル検索!
191件ヒット [101-191件を表示] (0.053秒)
トップページ > クエリ:Ruby[x] > クエリ:malloc[x]

別のキーワード

  1. rbconfig ruby
  2. fiddle ruby_free
  3. fiddle build_ruby_platform
  4. rake ruby
  5. rubygems/defaults ruby_engine

ライブラリ

モジュール

検索結果

<< < 1 2 >>

VALUE Data_Wrap_Struct(VALUE klass, RUBY_DATA_FUNC mark, RUBY_DATA_FUNC free, void *sval) (234.0)

C の構造体 sval をラップして klass クラスの インスタンスである Ruby オブジェクトを生成し、それを返します。 mark、free はそれぞれ sval のマーク用・解放用の 関数へのポインタです。どちらも、必要ないときはかわりに 0 を渡します。

...インスタンスである Ruby オブジェクトを生成し、それを返します。
mark、free はそれぞれ sval のマーク用・解放用の
関数へのポインタです。どちらも、必要ないときはかわりに 0 を渡します。

また RUBY_DATA_FUNC の定義は以下...
...です。

typedef void (*RUBY_DATA_FUNC)(void *st)

第一引数 st には sval が渡されます。

使用例

struct mytype {
int i;
char *s;
};

VALUE
my_s_new(klass)
VALUE klass;
{
struct mytype *m = malloc(sizeof(struct mytype));...

fiddle (36.0)

*.dllや*.soなど、ダイナミックリンクライブラリを扱うためのライブラリです。

..."long tv_usec"])
end

timeval = M::Timeval.malloc
e = M.gettimeofday(timeval, nil)

if e == 0
p timeval.tv_sec #=> 1173519547
end

上の例で、メモリの割り当てに M::Timeval.new ではなく
M::Timeval.malloc を使用していることに注意してください。...
...り値
fiddle でインポートした C の関数を呼び出すとき、
その引数と返り値はインポートする際に指定した型と
Ruby
のオブジェクトの種類によって変換されます。

引数の変換は以下の通りです。

: void* (つまり任意のポイン...
...g
Ruby
の整数を C の整数に変換します。

: double/float
Ruby
の整数 or 浮動小数点数を C の浮動小数点数に変換します

返り値の変換は以下の通りです。

: void
nil を返します

: (unsigned) char/short/int/long/long long
C の整数を Ruby...

Fiddle::Importer#struct(signature) -> Class (28.0)

C の構造体型に対応する Ruby のクラスを構築して返します。

...C の構造体型に対応する Ruby のクラスを構築して返します。

構造体の各要素は C と似せた表記ができます。そしてそれを
配列で signature に渡してデータを定義します。例えば C における
struct timeval {
long tv_sec;
long tv_u...
...ラスを生成します。

このメソッドが返すクラスには以下のメソッドが定義されています
* クラスメソッド malloc
* initialize
* to_ptr
* to_i
* 構造体の各メンバへのアクセサ
返されるクラスは Fiddle::CStruct を継承しています...
...require 'fiddle/import'

module M
extend Fiddle::Importer
dlload "libc.so.6"
extern "int gettimeofday(void*, void*)"
Timeval = struct(["long tv_sec", "long tv_usec"])
end

time = M::Timeval.malloc
M.gettimeofday(time, Fiddle::NULL)
p time.tv_sec
p time.tv_usec...

Fiddle.#free(addr) -> nil (24.0)

指定された addr が指すメモリ領域を開放します。

...e.#malloc が返した整数を addr に与えなければいけません。
そうでない場合、ruby インタプリタが異常終了します。

@param addr Fiddle.#malloc で確保されたメモリ領域を指す整数を指定します。

例:
require 'fiddle'
addr = Fiddle.malloc(10...

ObjectSpace.#memsize_of_all(klass = nil) -> Integer (24.0)

すべての生存しているオブジェクトが消費しているメモリ使用量をバイト単位 で返します。

...ラスのインスタンスのメモリ使用量を返し
ます。

本メソッドは以下のような Ruby のコードで定義できます。

//emlist[例][ruby]{
def memsize_of_all klass = false
total = 0
ObjectSpace.each_object{|e|
total += ObjectSpace.memsize_of(e) if...
...くまでもヒ
ントとして扱う必要があります。特に T_DATA の値は正しくないでしょう。

また、同様に戻り値の内容は malloc されたメモリの合計でもない事に注意し
てください。

本メソッドは C Ruby 以外では動作しません。...

絞り込み条件を変える

GC.stat(key) -> Numeric (18.0)

GC 内部の統計情報を Hash で返します。

...ect=>838,
:malloc_increase=>181034,
:malloc_limit=>16777216,
:minor_gc_count=>2,
:major_gc_count=>0,
:remembered_shady_object=>55,
:remembered_shady_object_limit=>0,
:old_object=>2422,
:old_object_limit=>0,
:oldmalloc_increase=>277386,
:oldmalloc_limit=>167772...
...16
}

戻り値のハッシュは処理系に依存します。これは将来変更になるかもしれません。

本メソッドは C Ruby 以外では動作しません。...
...:malloc_increase_bytes=>2389312,
:malloc_increase_bytes_limit=>16777216,
:minor_gc_count=>0,
:major_gc_count=>0,
:remembered_wb_unprotected_objects=>0,
:remembered_wb_unprotected_objects_limit=>0,
:old_objects=>0,
:old_objects_limit=>0,
:oldmalloc_increa...
...se_bytes=>2389760,
:oldmalloc_increase_bytes_limit=>16777216
}

戻り値のハッシュは処理系に依存します。これは将来変更になるかもしれません。

本メソッドは C Ruby 以外では動作しません。...

GC.stat(result_hash = {}) -> {Symbol => Integer} (18.0)

GC 内部の統計情報を Hash で返します。

...ect=>838,
:malloc_increase=>181034,
:malloc_limit=>16777216,
:minor_gc_count=>2,
:major_gc_count=>0,
:remembered_shady_object=>55,
:remembered_shady_object_limit=>0,
:old_object=>2422,
:old_object_limit=>0,
:oldmalloc_increase=>277386,
:oldmalloc_limit=>167772...
...16
}

戻り値のハッシュは処理系に依存します。これは将来変更になるかもしれません。

本メソッドは C Ruby 以外では動作しません。...
...:malloc_increase_bytes=>2389312,
:malloc_increase_bytes_limit=>16777216,
:minor_gc_count=>0,
:major_gc_count=>0,
:remembered_wb_unprotected_objects=>0,
:remembered_wb_unprotected_objects_limit=>0,
:old_objects=>0,
:old_objects_limit=>0,
:oldmalloc_increa...
...se_bytes=>2389760,
:oldmalloc_increase_bytes_limit=>16777216
}

戻り値のハッシュは処理系に依存します。これは将来変更になるかもしれません。

本メソッドは C Ruby 以外では動作しません。...

GC.stress=(value) (12.0)

GCのストレスモードを引数 value に設定します。 引数 value が真に設定されている間は、GC を行えるすべての機会に GC を行います。

...合に指定します。
: 0x02
sweep を遅らせる(Lazy Sweep を行う)に指定します。
: 0x04
malloc
/calloc/realloc の後でメジャーGCを動作させる場合に指定します。

//emlist[例][ruby]{
GC.stress # => false
GC.stress = true
GC.stress # => true
//}

@see GC.stress...
<< < 1 2 >>