Ignore:
Timestamp:
Feb 8, 2011, 11:05:30 AM (13 years ago)
Author:
george
Message:
  • Modified: Optimalized microthread execution from main thread.
  • Fixed: Passthrough of WaitFor on already signaled event.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • MicroThreading/UMicroThreadList.lfm

    r162 r164  
    11object MicroThreadListForm: TMicroThreadListForm
    2   Left = 367
     2  Left = 476
    33  Height = 423
    4   Top = 118
     4  Top = 111
    55  Width = 569
    66  Caption = 'Microthread list'
    77  ClientHeight = 423
    88  ClientWidth = 569
     9  OnClose = FormClose
    910  OnHide = FormHide
    1011  OnShow = FormShow
    1112  LCLVersion = '0.9.31'
    12   object Panel1: TPanel
    13     Left = 0
    14     Height = 248
    15     Top = 0
    16     Width = 569
    17     Align = alTop
    18     BevelOuter = bvNone
    19     ClientHeight = 248
    20     ClientWidth = 569
     13  object PageControl1: TPageControl
     14    Left = 8
     15    Height = 409
     16    Top = 7
     17    Width = 553
     18    ActivePage = TabSheet1
     19    Anchors = [akTop, akLeft, akRight, akBottom]
     20    TabIndex = 0
    2121    TabOrder = 0
    22     object Label1: TLabel
    23       Left = 8
    24       Height = 14
    25       Top = 8
    26       Width = 67
    27       Caption = 'Microthreads:'
    28       ParentColor = False
     22    object TabSheet1: TTabSheet
     23      Caption = 'State'
     24      ClientHeight = 383
     25      ClientWidth = 545
     26      object Label5: TLabel
     27        Left = 9
     28        Height = 14
     29        Top = 11
     30        Width = 117
     31        Caption = 'Logical processor count:'
     32        ParentColor = False
     33      end
     34      object Label7: TLabel
     35        Left = 8
     36        Height = 14
     37        Top = 27
     38        Width = 69
     39        Caption = 'Thread count:'
     40        ParentColor = False
     41      end
     42      object Label8: TLabel
     43        Left = 9
     44        Height = 14
     45        Top = 43
     46        Width = 95
     47        Caption = 'Micro thread count:'
     48        ParentColor = False
     49      end
     50      object Label10: TLabel
     51        Left = 151
     52        Height = 14
     53        Top = 43
     54        Width = 13
     55        Caption = '    '
     56        ParentColor = False
     57      end
     58      object Label9: TLabel
     59        Left = 150
     60        Height = 14
     61        Top = 27
     62        Width = 13
     63        Caption = '    '
     64        ParentColor = False
     65      end
     66      object Label6: TLabel
     67        Left = 150
     68        Height = 14
     69        Top = 11
     70        Width = 13
     71        Caption = '    '
     72        ParentColor = False
     73      end
     74      object Label1: TLabel
     75        Left = 8
     76        Height = 14
     77        Top = 63
     78        Width = 128
     79        Caption = 'Main thread loop duration:'
     80        ParentColor = False
     81      end
     82      object Label2: TLabel
     83        Left = 148
     84        Height = 14
     85        Top = 64
     86        Width = 13
     87        Caption = '    '
     88        ParentColor = False
     89      end
    2990    end
    30     object ListView1: TListView
    31       Left = 8
    32       Height = 218
    33       Top = 24
    34       Width = 557
    35       Anchors = [akTop, akLeft, akRight, akBottom]
    36       Columns = <     
    37         item
    38           Caption = 'Id'
    39           Width = 40
    40         end     
    41         item
    42           Caption = 'Usage'
    43         end     
    44         item
    45           Caption = 'Priority'
    46           Width = 40
    47         end     
    48         item
    49           Caption = 'State'
    50           Width = 60
    51         end     
    52         item
    53           Caption = 'Block state'
    54         end     
    55         item
    56           Caption = 'Execution time'
    57           Width = 70
    58         end     
    59         item
    60           Caption = 'Tick count'
    61         end     
    62         item
    63           Caption = 'Completion'
    64         end     
    65         item
    66           Caption = 'Used stack'
    67         end     
    68         item
    69           Caption = 'Name'
    70           Width = 70
    71         end>
    72       OwnerData = True
    73       ReadOnly = True
    74       RowSelect = True
    75       TabOrder = 0
    76       ViewStyle = vsReport
    77       OnData = ListView1Data
     91    object TabSheet2: TTabSheet
     92      Caption = 'Threads'
     93      ClientHeight = 383
     94      ClientWidth = 545
     95      object ListView2: TListView
     96        Left = 4
     97        Height = 376
     98        Top = 3
     99        Width = 536
     100        Anchors = [akTop, akLeft, akRight, akBottom]
     101        Columns = <       
     102          item
     103            Caption = 'Id'
     104          end       
     105          item
     106            Caption = 'State'
     107            Width = 100
     108          end       
     109          item
     110            Caption = 'Microthread Id'
     111            Width = 70
     112          end       
     113          item
     114            Caption = 'Loop duration'
     115            Width = 70
     116          end>
     117        OwnerData = True
     118        ReadOnly = True
     119        RowSelect = True
     120        TabOrder = 0
     121        ViewStyle = vsReport
     122        OnData = ListView2Data
     123      end
    78124    end
    79   end
    80   object Panel2: TPanel
    81     Left = 0
    82     Height = 170
    83     Top = 253
    84     Width = 569
    85     Align = alClient
    86     BevelOuter = bvNone
    87     ClientHeight = 170
    88     ClientWidth = 569
    89     TabOrder = 1
    90     object ListView2: TListView
    91       Left = 8
    92       Height = 142
    93       Top = 19
    94       Width = 557
    95       Anchors = [akTop, akLeft, akRight, akBottom]
    96       Columns = <     
    97         item
    98           Caption = 'Id'
    99         end     
    100         item
    101           Caption = 'State'
    102           Width = 100
    103         end     
    104         item
    105           Caption = 'Microthread Id'
    106           Width = 70
    107         end     
    108         item
    109           Caption = 'Loop duration'
    110           Width = 70
    111         end>
    112       OwnerData = True
    113       ReadOnly = True
    114       RowSelect = True
    115       TabOrder = 0
    116       ViewStyle = vsReport
    117       OnData = ListView2Data
     125    object TabSheet3: TTabSheet
     126      Caption = 'Microthreads'
     127      ClientHeight = 383
     128      ClientWidth = 545
     129      object ListView1: TListView
     130        Left = 4
     131        Height = 376
     132        Top = 3
     133        Width = 537
     134        Anchors = [akTop, akLeft, akRight, akBottom]
     135        Columns = <       
     136          item
     137            Caption = 'Id'
     138            Width = 40
     139          end       
     140          item
     141            Caption = 'Usage'
     142          end       
     143          item
     144            Caption = 'Priority'
     145            Width = 40
     146          end       
     147          item
     148            Caption = 'State'
     149            Width = 60
     150          end       
     151          item
     152            Caption = 'Block state'
     153          end       
     154          item
     155            Caption = 'Execution time'
     156            Width = 70
     157          end       
     158          item
     159            Caption = 'Tick count'
     160          end       
     161          item
     162            Caption = 'Completion'
     163          end       
     164          item
     165            Caption = 'Used stack'
     166          end       
     167          item
     168            Caption = 'Name'
     169            Width = 70
     170          end>
     171        OwnerData = True
     172        ReadOnly = True
     173        RowSelect = True
     174        TabOrder = 0
     175        ViewStyle = vsReport
     176        OnData = ListView1Data
     177      end
    118178    end
    119     object Label2: TLabel
    120       Left = 8
    121       Height = 14
    122       Top = 3
    123       Width = 44
    124       Caption = 'Threads:'
    125       ParentColor = False
    126     end
    127   end
    128   object Splitter1: TSplitter
    129     Cursor = crVSplit
    130     Left = 0
    131     Height = 5
    132     Top = 248
    133     Width = 569
    134     Align = alTop
    135     ResizeAnchor = akTop
    136179  end
    137180  object TimerRedraw: TTimer
    138181    Enabled = False
    139     Interval = 50
     182    Interval = 200
    140183    OnTimer = TimerRedrawTimer
    141184    left = 192
Note: See TracChangeset for help on using the changeset viewer.