PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
7943 | 99/09/02 12:35:38 | RE(8):PB6.5: 単項目アクセス時の関数、ドット表記のスピード By peanuts |
7936 | 99/09/02 10:31:19 | RE(7):PB6.5: 単項目アクセス時の関数、ドット表記のスピード By てとらぽっと |
7935 | 99/09/02 09:54:48 | RE(6):PB6.5: 単項目アクセス時の関数、ドット表記のスピード By STRATOVARIUS |
7932 | 99/09/01 23:45:51 | RE(5):PB6.5: DW更新処理後、更新したデータだけをDWに残す方法 By peanuts |
7931 | 99/09/01 22:16:40 | RE(4):PB6.5: DW更新処理後、更新したデータだけをDWに残す方法 By STRATOVARIUS |
7930 | 99/09/01 21:18:48 | RE(3):PB6.5: DW更新処理後、更新したデータだけをDWに残す方法 By peanuts |
7929 | 99/09/01 20:40:25 | RE(2):PB6.5: DW更新処理後、更新したデータだけをDWに残す方法 By STRATOVARIUS |
7928 | 99/09/01 20:01:31 | RE(1):PB6.5: DW更新処理後、更新したデータだけをDWに残す方法 By M.M |
7927 | 99/09/01 19:54:37 | PB6.5: DW更新処理後、更新したデータだけをDWに残す方法 By STRATOVARIUS |
カテゴリ:スクリプトの記述
日付:1999年09月02日 12:35 発信者:peanuts
題名:RE(8):PB6.5: 単項目アクセス時の関数、ドット表記のスピード
てとらぽっとさん、こんにちは。
>STRATOVARIUSさん、こんにちは。
>
>>【ドット表記】
>>ds.object.colum_name1[1,1000] = dw.object.colum_name1[1,1000]
>>ds.object.colum_name3[1,1000] = dw.object.colum_name3[1,1000]
>>【関数】
>>For i=1 to 1000
>> ds.Setitem(i,\'colum_name1\',dw.getitemstring(i,\'colum_name1\'))
>> ds.Setitem(i,\'colum_name3\',dw.getitemstring(i,\'colum_name3\'))
>>Loop
>>
>>私の感覚的には、関数の場合1000回Loopしますが、ドット表記だと構造体として、ごそっと移し
>>2回で済んでしまうような気がするため、ドット表記の方が早そうな感じがしてしまいます。
>
>この認識は正しいです。
>
>上のループと同様に ドット表記でも1行1カラムずつ1000回Loop させたら、
>関数の方が早いということです。
>いろいろパフォーマンスの実験をしてみると面白いです。
フォローありがとうございます。
STRATOVARIUSさん、こんにちは。
私が言いたかったのはドット表記と関数で同じ回数項目にアクセスした場合の比較でした。
このパフォーマンスの違いは内部的な関数の呼び出し回数で差がでるみたいです。
SetItem関数を使えば関数呼び出しは1回ですが、ドット表記ですと階層が深いほど内部的な関数の
呼び出しが多くなるというのを何かで見た記憶があります。
なので、複数の関数を1つのドット表記で書くことが出来ればドット表記のほうが速くなる可能性は
高くなるはずです。
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS Windows NT 4.0
DBMS Oracle SQL*Net 2.3
Browser InternetExplorer5.X
Server SoftWare
OS (記載なし)
DBMS Oracle 7.3
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.