Changeset 156 for MicroThreading/Demo
- Timestamp:
- Jan 28, 2011, 2:12:42 PM (14 years ago)
- Location:
- MicroThreading/Demo
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
MicroThreading/Demo/Demo.lpi
r155 r156 39 39 </Item2> 40 40 </RequiredPackages> 41 <Units Count="6 3">41 <Units Count="65"> 42 42 <Unit0> 43 43 <Filename Value="Demo.lpr"/> 44 44 <IsPartOfProject Value="True"/> 45 45 <UnitName Value="Demo"/> 46 <EditorIndex Value="4"/>47 46 <WindowIndex Value="0"/> 48 47 <TopLine Value="1"/> 49 <CursorPos X="21" Y="18"/> 50 <UsageCount Value="70"/> 51 <Loaded Value="True"/> 48 <CursorPos X="34" Y="16"/> 49 <UsageCount Value="82"/> 52 50 </Unit0> 53 51 <Unit1> … … 57 55 <ResourceBaseClass Value="Form"/> 58 56 <UnitName Value="UMainForm"/> 59 <EditorIndex Value=" 0"/>60 <WindowIndex Value="0"/> 61 <TopLine Value="2 06"/>62 <CursorPos X="1" Y="2 11"/>63 <UsageCount Value=" 70"/>57 <EditorIndex Value="9"/> 58 <WindowIndex Value="0"/> 59 <TopLine Value="270"/> 60 <CursorPos X="1" Y="284"/> 61 <UsageCount Value="82"/> 64 62 <Loaded Value="True"/> 65 63 <LoadedDesigner Value="True"/> … … 69 67 <UnitName Value="UMicroThreading"/> 70 68 <IsVisibleTab Value="True"/> 71 <EditorIndex Value=" 2"/>72 <WindowIndex Value="0"/> 73 <TopLine Value=" 708"/>74 <CursorPos X=" 24" Y="718"/>75 <UsageCount Value=" 37"/>69 <EditorIndex Value="0"/> 70 <WindowIndex Value="0"/> 71 <TopLine Value="513"/> 72 <CursorPos X="9" Y="525"/> 73 <UsageCount Value="43"/> 76 74 <Loaded Value="True"/> 77 75 </Unit2> … … 82 80 <TopLine Value="55"/> 83 81 <CursorPos X="3" Y="70"/> 84 <UsageCount Value=" 9"/>82 <UsageCount Value="8"/> 85 83 </Unit3> 86 84 <Unit4> … … 89 87 <TopLine Value="346"/> 90 88 <CursorPos X="24" Y="351"/> 91 <UsageCount Value=" 7"/>89 <UsageCount Value="6"/> 92 90 </Unit4> 93 91 <Unit5> … … 96 94 <TopLine Value="1"/> 97 95 <CursorPos X="1" Y="1"/> 98 <UsageCount Value=" 7"/>96 <UsageCount Value="6"/> 99 97 <DefaultSyntaxHighlighter Value="XML"/> 100 98 </Unit5> … … 105 103 <TopLine Value="286"/> 106 104 <CursorPos X="1" Y="1"/> 107 <UsageCount Value=" 7"/>105 <UsageCount Value="6"/> 108 106 </Unit6> 109 107 <Unit7> … … 113 111 <TopLine Value="1"/> 114 112 <CursorPos X="1" Y="8"/> 115 <UsageCount Value=" 9"/>113 <UsageCount Value="8"/> 116 114 <DefaultSyntaxHighlighter Value="Delphi"/> 117 115 </Unit7> … … 122 120 <TopLine Value="56"/> 123 121 <CursorPos X="24" Y="77"/> 124 <UsageCount Value="1 8"/>122 <UsageCount Value="17"/> 125 123 <DefaultSyntaxHighlighter Value="Delphi"/> 126 124 </Unit8> … … 131 129 <TopLine Value="264"/> 132 130 <CursorPos X="37" Y="141"/> 133 <UsageCount Value="1 8"/>131 <UsageCount Value="17"/> 134 132 <DefaultSyntaxHighlighter Value="Delphi"/> 135 133 </Unit9> … … 140 138 <TopLine Value="302"/> 141 139 <CursorPos X="5" Y="33"/> 142 <UsageCount Value=" 7"/>140 <UsageCount Value="6"/> 143 141 </Unit10> 144 142 <Unit11> … … 147 145 <TopLine Value="479"/> 148 146 <CursorPos X="3" Y="494"/> 149 <UsageCount Value=" 10"/>147 <UsageCount Value="9"/> 150 148 </Unit11> 151 149 <Unit12> … … 154 152 <TopLine Value="1046"/> 155 153 <CursorPos X="34" Y="1053"/> 156 <UsageCount Value="1 6"/>154 <UsageCount Value="15"/> 157 155 </Unit12> 158 156 <Unit13> … … 161 159 <TopLine Value="317"/> 162 160 <CursorPos X="1" Y="341"/> 163 <UsageCount Value=" 9"/>161 <UsageCount Value="8"/> 164 162 </Unit13> 165 163 <Unit14> … … 168 166 <TopLine Value="45"/> 169 167 <CursorPos X="1" Y="62"/> 170 <UsageCount Value=" 9"/>168 <UsageCount Value="8"/> 171 169 </Unit14> 172 170 <Unit15> … … 175 173 <TopLine Value="1670"/> 176 174 <CursorPos X="1" Y="1685"/> 177 <UsageCount Value=" 10"/>175 <UsageCount Value="9"/> 178 176 </Unit15> 179 177 <Unit16> … … 183 181 <TopLine Value="290"/> 184 182 <CursorPos X="36" Y="306"/> 185 <UsageCount Value="1 9"/>183 <UsageCount Value="18"/> 186 184 </Unit16> 187 185 <Unit17> … … 190 188 <TopLine Value="67"/> 191 189 <CursorPos X="10" Y="91"/> 192 <UsageCount Value=" 7"/>190 <UsageCount Value="6"/> 193 191 </Unit17> 194 192 <Unit18> … … 197 195 <TopLine Value="1823"/> 198 196 <CursorPos X="3" Y="1838"/> 199 <UsageCount Value="1 1"/>197 <UsageCount Value="10"/> 200 198 </Unit18> 201 199 <Unit19> … … 204 202 <TopLine Value="1348"/> 205 203 <CursorPos X="1" Y="1363"/> 206 <UsageCount Value=" 9"/>204 <UsageCount Value="8"/> 207 205 </Unit19> 208 206 <Unit20> … … 211 209 <TopLine Value="32"/> 212 210 <CursorPos X="48" Y="50"/> 213 <UsageCount Value=" 8"/>211 <UsageCount Value="7"/> 214 212 </Unit20> 215 213 <Unit21> … … 218 216 <TopLine Value="8"/> 219 217 <CursorPos X="11" Y="25"/> 220 <UsageCount Value=" 10"/>218 <UsageCount Value="9"/> 221 219 </Unit21> 222 220 <Unit22> … … 226 224 <TopLine Value="1"/> 227 225 <CursorPos X="25" Y="9"/> 228 <UsageCount Value="1 1"/>226 <UsageCount Value="10"/> 229 227 </Unit22> 230 228 <Unit23> … … 233 231 <TopLine Value="38"/> 234 232 <CursorPos X="29" Y="50"/> 235 <UsageCount Value="1 5"/>233 <UsageCount Value="14"/> 236 234 </Unit23> 237 235 <Unit24> … … 240 238 <TopLine Value="106"/> 241 239 <CursorPos X="10" Y="119"/> 242 <UsageCount Value="1 8"/>240 <UsageCount Value="17"/> 243 241 </Unit24> 244 242 <Unit25> … … 247 245 <TopLine Value="254"/> 248 246 <CursorPos X="12" Y="258"/> 249 <UsageCount Value="1 1"/>247 <UsageCount Value="10"/> 250 248 </Unit25> 251 249 <Unit26> … … 255 253 <TopLine Value="581"/> 256 254 <CursorPos X="11" Y="585"/> 257 <UsageCount Value="1 1"/>255 <UsageCount Value="10"/> 258 256 </Unit26> 259 257 <Unit27> 260 258 <Filename Value="../../../../Programy/Lazarus/0.9.31_2.4.3/fpc/2.4.3/source/rtl/win/wininc/redef.inc"/> 261 <WindowIndex Value="0"/> 262 <TopLine Value="525"/> 263 <CursorPos X="11" Y="538"/> 264 <UsageCount Value="11"/> 259 <EditorIndex Value="7"/> 260 <WindowIndex Value="0"/> 261 <TopLine Value="739"/> 262 <CursorPos X="27" Y="752"/> 263 <UsageCount Value="17"/> 264 <Loaded Value="True"/> 265 265 </Unit27> 266 266 <Unit28> 267 267 <Filename Value="../../../../Programy/Lazarus/0.9.31_2.4.3/fpc/2.4.3/source/packages/fcl-base/src/syncobjs.pp"/> 268 268 <UnitName Value="syncobjs"/> 269 <WindowIndex Value="0"/> 270 <TopLine Value="57"/> 271 <CursorPos X="16" Y="70"/> 272 <UsageCount Value="12"/> 269 <EditorIndex Value="2"/> 270 <WindowIndex Value="0"/> 271 <TopLine Value="104"/> 272 <CursorPos X="28" Y="106"/> 273 <UsageCount Value="14"/> 274 <Loaded Value="True"/> 273 275 </Unit28> 274 276 <Unit29> 275 277 <Filename Value="../../../../Programy/Lazarus/0.9.31_2.4.3/fpc/2.4.3/source/rtl/inc/threadh.inc"/> 276 <WindowIndex Value="0"/> 277 <TopLine Value="18"/> 278 <CursorPos X="50" Y="31"/> 279 <UsageCount Value="12"/> 278 <EditorIndex Value="3"/> 279 <WindowIndex Value="0"/> 280 <TopLine Value="138"/> 281 <CursorPos X="11" Y="151"/> 282 <UsageCount Value="14"/> 283 <Loaded Value="True"/> 280 284 </Unit29> 281 285 <Unit30> 282 286 <Filename Value="../../../../Programy/Lazarus/0.9.31_2.4.3/fpc/2.4.3/source/rtl/inc/thread.inc"/> 283 <WindowIndex Value="0"/> 284 <TopLine Value="109"/> 285 <CursorPos X="3" Y="112"/> 286 <UsageCount Value="12"/> 287 <EditorIndex Value="4"/> 288 <WindowIndex Value="0"/> 289 <TopLine Value="199"/> 290 <CursorPos X="3" Y="202"/> 291 <UsageCount Value="14"/> 292 <Loaded Value="True"/> 287 293 </Unit30> 288 294 <Unit31> 289 295 <Filename Value="../../../../Programy/Lazarus/0.9.31_2.4.3/fpc/2.4.3/source/rtl/win/sysosh.inc"/> 290 <WindowIndex Value="0"/> 291 <TopLine Value="12"/> 292 <CursorPos X="3" Y="25"/> 293 <UsageCount Value="12"/> 296 <EditorIndex Value="12"/> 297 <WindowIndex Value="0"/> 298 <TopLine Value="8"/> 299 <CursorPos X="3" Y="33"/> 300 <UsageCount Value="14"/> 301 <Loaded Value="True"/> 294 302 </Unit31> 295 303 <Unit32> 296 304 <Filename Value="../../../../Programy/Lazarus/0.9.31_2.4.3/fpc/2.4.3/source/rtl/objpas/classes/classesh.inc"/> 297 <EditorIndex Value=" 8"/>298 <WindowIndex Value="0"/> 299 <TopLine Value=" 1467"/>300 <CursorPos X=" 5" Y="1488"/>301 <UsageCount Value=" 18"/>305 <EditorIndex Value="10"/> 306 <WindowIndex Value="0"/> 307 <TopLine Value="302"/> 308 <CursorPos X="19" Y="319"/> 309 <UsageCount Value="20"/> 302 310 <Loaded Value="True"/> 303 311 </Unit32> 304 312 <Unit33> 305 313 <Filename Value="../../../../Programy/Lazarus/0.9.31_2.4.3/fpc/2.4.3/source/rtl/win/tthread.inc"/> 306 <EditorIndex Value="9"/>307 314 <WindowIndex Value="0"/> 308 315 <TopLine Value="52"/> 309 316 <CursorPos X="25" Y="65"/> 310 <UsageCount Value="15"/> 311 <Loaded Value="True"/> 317 <UsageCount Value="14"/> 312 318 </Unit33> 313 319 <Unit34> … … 316 322 <TopLine Value="130"/> 317 323 <CursorPos X="10" Y="143"/> 318 <UsageCount Value="1 2"/>324 <UsageCount Value="11"/> 319 325 </Unit34> 320 326 <Unit35> … … 323 329 <TopLine Value="1923"/> 324 330 <CursorPos X="6" Y="1936"/> 325 <UsageCount Value="1 2"/>331 <UsageCount Value="11"/> 326 332 </Unit35> 327 333 <Unit36> 328 334 <Filename Value="../../../../Programy/Lazarus/0.9.31_2.4.3/fpc/2.4.3/source/rtl/objpas/classes/classes.inc"/> 329 <EditorIndex Value="10"/>330 335 <WindowIndex Value="0"/> 331 336 <TopLine Value="124"/> 332 337 <CursorPos X="3" Y="126"/> 333 <UsageCount Value="18"/> 334 <Loaded Value="True"/> 338 <UsageCount Value="17"/> 335 339 </Unit36> 336 340 <Unit37> … … 339 343 <TopLine Value="181"/> 340 344 <CursorPos X="21" Y="194"/> 341 <UsageCount Value="1 2"/>345 <UsageCount Value="11"/> 342 346 </Unit37> 343 347 <Unit38> 344 348 <Filename Value="../../../../Programy/Lazarus/0.9.31_2.4.3/fpc/2.4.3/source/rtl/objpas/sysutils/osutilsh.inc"/> 345 <EditorIndex Value="5"/>346 349 <WindowIndex Value="0"/> 347 350 <TopLine Value="14"/> 348 351 <CursorPos X="17" Y="27"/> 349 <UsageCount Value="13"/> 350 <Loaded Value="True"/> 352 <UsageCount Value="12"/> 351 353 </Unit38> 352 354 <Unit39> … … 355 357 <TopLine Value="2275"/> 356 358 <CursorPos X="39" Y="2285"/> 357 <UsageCount Value="1 1"/>359 <UsageCount Value="10"/> 358 360 </Unit39> 359 361 <Unit40> 360 362 <Filename Value="../../../../Programy/Lazarus/0.9.31_2.4.3/fpc/2.4.3/source/rtl/inc/systemh.inc"/> 361 <EditorIndex Value="3"/>362 363 <WindowIndex Value="0"/> 363 364 <TopLine Value="480"/> 364 365 <CursorPos X="3" Y="493"/> 365 <UsageCount Value="10"/> 366 <Loaded Value="True"/> 366 <UsageCount Value="9"/> 367 367 </Unit40> 368 368 <Unit41> … … 371 371 <TopLine Value="197"/> 372 372 <CursorPos X="30" Y="208"/> 373 <UsageCount Value=" 9"/>373 <UsageCount Value="8"/> 374 374 </Unit41> 375 375 <Unit42> … … 378 378 <TopLine Value="737"/> 379 379 <CursorPos X="21" Y="747"/> 380 <UsageCount Value=" 9"/>380 <UsageCount Value="8"/> 381 381 </Unit42> 382 382 <Unit43> … … 385 385 <TopLine Value="96"/> 386 386 <CursorPos X="1" Y="1"/> 387 <UsageCount Value=" 9"/>387 <UsageCount Value="8"/> 388 388 </Unit43> 389 389 <Unit44> … … 392 392 <TopLine Value="221"/> 393 393 <CursorPos X="1" Y="235"/> 394 <UsageCount Value="1 2"/>394 <UsageCount Value="11"/> 395 395 </Unit44> 396 396 <Unit45> 397 397 <Filename Value="../../../../Programy/Lazarus/0.9.31_2.4.3/lcl/interfaces/win32/win32object.inc"/> 398 <EditorIndex Value="1"/> 398 399 <WindowIndex Value="0"/> 399 400 <TopLine Value="387"/> 400 401 <CursorPos X="1" Y="400"/> 401 <UsageCount Value="12"/> 402 <UsageCount Value="11"/> 403 <Loaded Value="True"/> 402 404 </Unit45> 403 405 <Unit46> … … 406 408 <TopLine Value="6081"/> 407 409 <CursorPos X="6" Y="6094"/> 408 <UsageCount Value="1 2"/>410 <UsageCount Value="11"/> 409 411 </Unit46> 410 412 <Unit47> … … 413 415 <TopLine Value="160"/> 414 416 <CursorPos X="12" Y="163"/> 415 <UsageCount Value=" 9"/>417 <UsageCount Value="8"/> 416 418 </Unit47> 417 419 <Unit48> 418 420 <Filename Value="../UPlatform.pas"/> 419 421 <UnitName Value="UPlatform"/> 420 <EditorIndex Value=" 12"/>421 <WindowIndex Value="0"/> 422 <TopLine Value=" 19"/>423 <CursorPos X=" 1" Y="41"/>424 <UsageCount Value=" 17"/>422 <EditorIndex Value="6"/> 423 <WindowIndex Value="0"/> 424 <TopLine Value="23"/> 425 <CursorPos X="31" Y="38"/> 426 <UsageCount Value="23"/> 425 427 <Loaded Value="True"/> 426 428 </Unit48> … … 430 432 <TopLine Value="9153"/> 431 433 <CursorPos X="8" Y="9166"/> 432 <UsageCount Value=" 9"/>434 <UsageCount Value="8"/> 433 435 </Unit49> 434 436 <Unit50> … … 438 440 <TopLine Value="1"/> 439 441 <CursorPos X="1" Y="1"/> 440 <UsageCount Value=" 9"/>442 <UsageCount Value="8"/> 441 443 </Unit50> 442 444 <Unit51> … … 445 447 <TopLine Value="2380"/> 446 448 <CursorPos X="30" Y="2390"/> 447 <UsageCount Value=" 9"/>449 <UsageCount Value="8"/> 448 450 </Unit51> 449 451 <Unit52> … … 452 454 <TopLine Value="150"/> 453 455 <CursorPos X="55" Y="162"/> 454 <UsageCount Value=" 9"/>456 <UsageCount Value="8"/> 455 457 </Unit52> 456 458 <Unit53> … … 459 461 <TopLine Value="5227"/> 460 462 <CursorPos X="1" Y="5242"/> 461 <UsageCount Value=" 9"/>463 <UsageCount Value="8"/> 462 464 </Unit53> 463 465 <Unit54> … … 467 469 <TopLine Value="102"/> 468 470 <CursorPos X="1" Y="121"/> 469 <UsageCount Value=" 9"/>471 <UsageCount Value="8"/> 470 472 </Unit54> 471 473 <Unit55> … … 474 476 <TopLine Value="3515"/> 475 477 <CursorPos X="1" Y="3531"/> 476 <UsageCount Value=" 9"/>478 <UsageCount Value="8"/> 477 479 </Unit55> 478 480 <Unit56> … … 481 483 <TopLine Value="1159"/> 482 484 <CursorPos X="1" Y="1174"/> 483 <UsageCount Value=" 9"/>485 <UsageCount Value="8"/> 484 486 </Unit56> 485 487 <Unit57> … … 487 489 <EditorIndex Value="11"/> 488 490 <WindowIndex Value="0"/> 489 <TopLine Value=" 590"/>490 <CursorPos X=" 14" Y="594"/>491 <UsageCount Value="1 3"/>491 <TopLine Value="909"/> 492 <CursorPos X="26" Y="917"/> 493 <UsageCount Value="15"/> 492 494 <Loaded Value="True"/> 493 495 </Unit57> 494 496 <Unit58> 495 497 <Filename Value="../../../../Programy/Lazarus/0.9.31_2.4.3/lcl/interfaces/win32/win32callback.inc"/> 496 <EditorIndex Value="7"/>497 498 <WindowIndex Value="0"/> 498 499 <TopLine Value="1086"/> 499 500 <CursorPos X="1" Y="1099"/> 500 <UsageCount Value="13"/> 501 <Loaded Value="True"/> 501 <UsageCount Value="12"/> 502 502 </Unit58> 503 503 <Unit59> … … 507 507 <TopLine Value="357"/> 508 508 <CursorPos X="3" Y="370"/> 509 <UsageCount Value="1 1"/>509 <UsageCount Value="10"/> 510 510 </Unit59> 511 511 <Unit60> 512 512 <Filename Value="../../../../Programy/Lazarus/0.9.31_2.4.3/lcl/customtimer.pas"/> 513 513 <UnitName Value="CustomTimer"/> 514 <EditorIndex Value="6"/>515 514 <WindowIndex Value="0"/> 516 515 <TopLine Value="40"/> 517 516 <CursorPos X="17" Y="53"/> 518 <UsageCount Value="12"/> 519 <Loaded Value="True"/> 517 <UsageCount Value="11"/> 520 518 </Unit60> 521 519 <Unit61> 522 520 <Filename Value="../ReadMe.txt"/> 523 <EditorIndex Value="13"/>524 521 <WindowIndex Value="0"/> 525 522 <TopLine Value="1"/> 526 523 <CursorPos X="17" Y="14"/> 527 <UsageCount Value="10"/> 528 <Loaded Value="True"/> 524 <UsageCount Value="9"/> 529 525 <DefaultSyntaxHighlighter Value="None"/> 530 526 </Unit61> … … 532 528 <Filename Value="../../../../Programy/Lazarus/0.9.31_2.4.3/lcl/forms.pp"/> 533 529 <UnitName Value="Forms"/> 534 <EditorIndex Value="1"/>535 530 <WindowIndex Value="0"/> 536 531 <TopLine Value="57"/> 537 532 <CursorPos X="3" Y="70"/> 538 <UsageCount Value="10"/> 539 <Loaded Value="True"/> 533 <UsageCount Value="9"/> 540 534 </Unit62> 535 <Unit63> 536 <Filename Value="../../../../Programy/Lazarus/0.9.31_2.4.3/fpc/2.4.3/source/rtl/objpas/sysutils/sysutilh.inc"/> 537 <EditorIndex Value="8"/> 538 <WindowIndex Value="0"/> 539 <TopLine Value="1"/> 540 <CursorPos X="55" Y="4"/> 541 <UsageCount Value="16"/> 542 <Loaded Value="True"/> 543 </Unit63> 544 <Unit64> 545 <Filename Value="../../../../Programy/Lazarus/0.9.31_2.4.3/lcl/controls.pp"/> 546 <UnitName Value="Controls"/> 547 <EditorIndex Value="5"/> 548 <WindowIndex Value="0"/> 549 <TopLine Value="2660"/> 550 <CursorPos X="1" Y="2673"/> 551 <UsageCount Value="15"/> 552 <Loaded Value="True"/> 553 </Unit64> 541 554 </Units> 542 <JumpHistory Count="30" HistoryIndex="2 9">555 <JumpHistory Count="30" HistoryIndex="28"> 543 556 <Position1> 544 557 <Filename Value="../UMicroThreading.pas"/> 545 <Caret Line="7 18" Column="1" TopLine="701"/>558 <Caret Line="773" Column="1" TopLine="760"/> 546 559 </Position1> 547 560 <Position2> 548 561 <Filename Value="../UMicroThreading.pas"/> 549 <Caret Line="7 19" Column="1" TopLine="701"/>562 <Caret Line="774" Column="1" TopLine="760"/> 550 563 </Position2> 551 564 <Position3> 552 565 <Filename Value="../UMicroThreading.pas"/> 553 <Caret Line="7 20" Column="1" TopLine="701"/>566 <Caret Line="772" Column="1" TopLine="760"/> 554 567 </Position3> 555 568 <Position4> 556 569 <Filename Value="../UMicroThreading.pas"/> 557 <Caret Line="7 18" Column="1" TopLine="701"/>570 <Caret Line="773" Column="1" TopLine="760"/> 558 571 </Position4> 559 572 <Position5> 560 573 <Filename Value="../UMicroThreading.pas"/> 561 <Caret Line="7 19" Column="1" TopLine="701"/>574 <Caret Line="774" Column="1" TopLine="760"/> 562 575 </Position5> 563 576 <Position6> 564 577 <Filename Value="../UMicroThreading.pas"/> 565 <Caret Line="7 20" Column="1" TopLine="701"/>578 <Caret Line="772" Column="1" TopLine="760"/> 566 579 </Position6> 567 580 <Position7> 568 581 <Filename Value="../UMicroThreading.pas"/> 569 <Caret Line="7 18" Column="1" TopLine="701"/>582 <Caret Line="773" Column="1" TopLine="760"/> 570 583 </Position7> 571 584 <Position8> 572 585 <Filename Value="../UMicroThreading.pas"/> 573 <Caret Line="7 19" Column="1" TopLine="701"/>586 <Caret Line="774" Column="1" TopLine="760"/> 574 587 </Position8> 575 588 <Position9> 576 589 <Filename Value="../UMicroThreading.pas"/> 577 <Caret Line="7 20" Column="1" TopLine="701"/>590 <Caret Line="772" Column="1" TopLine="760"/> 578 591 </Position9> 579 592 <Position10> 580 593 <Filename Value="../UMicroThreading.pas"/> 581 <Caret Line=" 670" Column="3" TopLine="664"/>594 <Caret Line="773" Column="1" TopLine="760"/> 582 595 </Position10> 583 596 <Position11> 584 597 <Filename Value="../UMicroThreading.pas"/> 585 <Caret Line="7 06" Column="1" TopLine="693"/>598 <Caret Line="774" Column="1" TopLine="760"/> 586 599 </Position11> 587 600 <Position12> 588 601 <Filename Value="../UMicroThreading.pas"/> 589 <Caret Line="77 1" Column="3" TopLine="767"/>602 <Caret Line="772" Column="1" TopLine="760"/> 590 603 </Position12> 591 604 <Position13> 592 605 <Filename Value="../UMicroThreading.pas"/> 593 <Caret Line="7 19" Column="12" TopLine="699"/>606 <Caret Line="773" Column="1" TopLine="760"/> 594 607 </Position13> 595 608 <Position14> 596 609 <Filename Value="../UMicroThreading.pas"/> 597 <Caret Line="7 18" Column="1" TopLine="699"/>610 <Caret Line="774" Column="1" TopLine="760"/> 598 611 </Position14> 599 612 <Position15> 600 613 <Filename Value="../UMicroThreading.pas"/> 601 <Caret Line="7 19" Column="1" TopLine="699"/>614 <Caret Line="772" Column="1" TopLine="760"/> 602 615 </Position15> 603 616 <Position16> 604 617 <Filename Value="../UMicroThreading.pas"/> 605 <Caret Line="7 20" Column="1" TopLine="699"/>618 <Caret Line="773" Column="1" TopLine="760"/> 606 619 </Position16> 607 620 <Position17> 608 621 <Filename Value="../UMicroThreading.pas"/> 609 <Caret Line="7 18" Column="1" TopLine="699"/>622 <Caret Line="774" Column="1" TopLine="760"/> 610 623 </Position17> 611 624 <Position18> 612 625 <Filename Value="../UMicroThreading.pas"/> 613 <Caret Line="7 19" Column="1" TopLine="699"/>626 <Caret Line="772" Column="1" TopLine="760"/> 614 627 </Position18> 615 628 <Position19> 616 629 <Filename Value="../UMicroThreading.pas"/> 617 <Caret Line="7 20" Column="1" TopLine="699"/>630 <Caret Line="773" Column="1" TopLine="760"/> 618 631 </Position19> 619 632 <Position20> 620 633 <Filename Value="../UMicroThreading.pas"/> 621 <Caret Line="7 18" Column="1" TopLine="699"/>634 <Caret Line="774" Column="1" TopLine="760"/> 622 635 </Position20> 623 636 <Position21> 624 637 <Filename Value="../UMicroThreading.pas"/> 625 <Caret Line="7 19" Column="1" TopLine="699"/>638 <Caret Line="772" Column="1" TopLine="760"/> 626 639 </Position21> 627 640 <Position22> 628 641 <Filename Value="../UMicroThreading.pas"/> 629 <Caret Line="7 18" Column="1" TopLine="699"/>642 <Caret Line="773" Column="1" TopLine="760"/> 630 643 </Position22> 631 644 <Position23> 632 645 <Filename Value="../UMicroThreading.pas"/> 633 <Caret Line="7 19" Column="1" TopLine="699"/>646 <Caret Line="774" Column="1" TopLine="760"/> 634 647 </Position23> 635 648 <Position24> 636 649 <Filename Value="../UMicroThreading.pas"/> 637 <Caret Line=" 720" Column="1" TopLine="699"/>650 <Caret Line="810" Column="35" TopLine="796"/> 638 651 </Position24> 639 652 <Position25> 640 <Filename Value="../ UMicroThreading.pas"/>641 <Caret Line=" 718" Column="1" TopLine="699"/>653 <Filename Value="../../../../Programy/Lazarus/0.9.31_2.4.3/lcl/interfaces/win32/win32object.inc"/> 654 <Caret Line="400" Column="1" TopLine="387"/> 642 655 </Position25> 643 656 <Position26> 644 657 <Filename Value="../UMicroThreading.pas"/> 645 <Caret Line=" 719" Column="1" TopLine="699"/>658 <Caret Line="524" Column="9" TopLine="513"/> 646 659 </Position26> 647 660 <Position27> 648 661 <Filename Value="../UMicroThreading.pas"/> 649 <Caret Line=" 4" Column="72" TopLine="1"/>662 <Caret Line="523" Column="1" TopLine="513"/> 650 663 </Position27> 651 664 <Position28> 652 665 <Filename Value="../UMicroThreading.pas"/> 653 <Caret Line=" 166" Column="26" TopLine="144"/>666 <Caret Line="524" Column="1" TopLine="513"/> 654 667 </Position28> 655 668 <Position29> 656 669 <Filename Value="../UMicroThreading.pas"/> 657 <Caret Line=" 670" Column="24" TopLine="654"/>670 <Caret Line="526" Column="1" TopLine="513"/> 658 671 </Position29> 659 672 <Position30> 660 <Filename Value="../ UMicroThreading.pas"/>661 <Caret Line=" 783" Column="25" TopLine="766"/>673 <Filename Value="../../../../Programy/Lazarus/0.9.31_2.4.3/lcl/interfaces/win32/win32object.inc"/> 674 <Caret Line="400" Column="1" TopLine="387"/> 662 675 </Position30> 663 676 </JumpHistory> … … 679 692 <StackChecks Value="True"/> 680 693 </Checks> 694 <VerifyObjMethodCallValidity Value="True"/> 681 695 </CodeGeneration> 682 696 <Linking> … … 698 712 </CompilerOptions> 699 713 <Debugging> 714 <BreakPoints Count="1"> 715 <Item1> 716 <Source Value="../UMicroThreading.pas"/> 717 <Line Value="523"/> 718 </Item1> 719 </BreakPoints> 700 720 <Watches Count="2"> 701 721 <Item1> -
MicroThreading/Demo/UMainForm.lfm
r155 r156 3 3 Height = 533 4 4 Top = 98 5 Width = 7755 Width = 816 6 6 Caption = 'MicroThreading demo' 7 7 ClientHeight = 533 8 ClientWidth = 7758 ClientWidth = 816 9 9 OnCreate = FormCreate 10 10 OnDestroy = FormDestroy … … 15 15 Height = 519 16 16 Top = 8 17 Width = 76117 Width = 802 18 18 ActivePage = TabSheet2 19 19 Anchors = [akTop, akLeft, akRight, akBottom] 20 TabIndex = 120 TabIndex = 0 21 21 TabOrder = 0 22 object TabSheet1: TTabSheet23 Caption = 'Job control'24 ClientHeight = 49325 ClientWidth = 75326 object ButtonAddWorkers: TButton27 Left = 1028 Height = 2529 Top = 730 Width = 10431 Caption = 'Add workers'32 OnClick = ButtonAddWorkersClick33 TabOrder = 034 end35 object ButtonClearMicroThreads: TButton36 Left = 1037 Height = 2538 Top = 7439 Width = 10440 Caption = 'Clear jobs'41 OnClick = ButtonClearMicroThreadsClick42 TabOrder = 143 end44 object Label4: TLabel45 Left = 12446 Height = 1447 Top = 1448 Width = 3449 Caption = 'Count:'50 ParentColor = False51 end52 object SpinEdit1: TSpinEdit53 Left = 20454 Height = 2155 Top = 1156 Width = 7457 MaxValue = 10000058 MinValue = 159 TabStop = False60 TabOrder = 261 Value = 262 end63 object Memo1: TMemo64 Left = 31665 Height = 24466 Top = 1467 Width = 29468 Anchors = [akTop, akLeft, akBottom]69 ScrollBars = ssAutoBoth70 TabOrder = 371 end72 object Button1: TButton73 Left = 1274 Height = 2575 Top = 13876 Width = 7577 Caption = 'Clear memo'78 OnClick = Button1Click79 TabOrder = 480 end81 object Label12: TLabel82 Left = 12383 Height = 1484 Top = 3885 Width = 5286 Caption = 'Iterations:'87 ParentColor = False88 end89 object SpinEdit3: TSpinEdit90 Left = 20491 Height = 2192 Top = 3693 Width = 7494 MaxValue = 100000000095 OnChange = SpinEdit3Change96 TabOrder = 597 Value = 100000098 end99 end100 22 object TabSheet2: TTabSheet 101 23 Caption = 'Scheduler state' 102 24 ClientHeight = 493 103 ClientWidth = 7 5325 ClientWidth = 794 104 26 object ListView1: TListView 105 27 Left = 222 106 28 Height = 460 107 29 Top = 24 108 Width = 47730 Width = 567 109 31 Anchors = [akTop, akLeft, akRight, akBottom] 110 32 Columns = < … … 114 36 end 115 37 item 116 Caption = 'Name'117 end118 item119 38 Caption = 'Usage' 120 39 end … … 134 53 end 135 54 item 55 Caption = 'Execution count' 56 end 57 item 136 58 Caption = 'Completion' 137 59 end … … 139 61 Caption = 'Used stack' 140 62 Width = 178 63 end 64 item 65 Caption = 'Name' 141 66 end> 142 67 OwnerData = True … … 258 183 end 259 184 end 185 object TabSheet1: TTabSheet 186 Caption = 'Job control' 187 ClientHeight = 493 188 ClientWidth = 794 189 object ButtonAddWorkers: TButton 190 Left = 10 191 Height = 25 192 Top = 7 193 Width = 104 194 Caption = 'Add workers' 195 OnClick = ButtonAddWorkersClick 196 TabOrder = 0 197 end 198 object ButtonClearMicroThreads: TButton 199 Left = 10 200 Height = 25 201 Top = 74 202 Width = 104 203 Caption = 'Clear jobs' 204 OnClick = ButtonClearMicroThreadsClick 205 TabOrder = 1 206 end 207 object Label4: TLabel 208 Left = 124 209 Height = 14 210 Top = 14 211 Width = 34 212 Caption = 'Count:' 213 ParentColor = False 214 end 215 object SpinEdit1: TSpinEdit 216 Left = 204 217 Height = 21 218 Top = 11 219 Width = 74 220 MaxValue = 100000 221 MinValue = 1 222 TabStop = False 223 TabOrder = 2 224 Value = 2 225 end 226 object Memo1: TMemo 227 Left = 316 228 Height = 244 229 Top = 14 230 Width = 294 231 Anchors = [akTop, akLeft, akBottom] 232 ScrollBars = ssAutoBoth 233 TabOrder = 3 234 end 235 object Button1: TButton 236 Left = 12 237 Height = 25 238 Top = 138 239 Width = 75 240 Caption = 'Clear memo' 241 OnClick = Button1Click 242 TabOrder = 4 243 end 244 object Label12: TLabel 245 Left = 123 246 Height = 14 247 Top = 38 248 Width = 52 249 Caption = 'Iterations:' 250 ParentColor = False 251 end 252 object SpinEdit3: TSpinEdit 253 Left = 204 254 Height = 21 255 Top = 36 256 Width = 74 257 MaxValue = 1000000000 258 OnChange = SpinEdit3Change 259 TabOrder = 5 260 Value = 10000000 261 end 262 end 260 263 object TabSheet3: TTabSheet 261 264 Caption = 'Testing' … … 313 316 top = 115 314 317 end 315 object TimerSchedulerStart: TTimer316 Interval = 10317 OnTimer = TimerSchedulerStartTimer318 left = 429319 top = 163320 end321 318 end -
MicroThreading/Demo/UMainForm.pas
r155 r156 46 46 TabSheet3: TTabSheet; 47 47 TimerRedraw: TTimer; 48 TimerSchedulerStart: TTimer;49 48 procedure Button1Click(Sender: TObject); 50 49 procedure ButtonSchedulerStartStopClick(Sender: TObject); … … 62 61 procedure SpinEdit3Change(Sender: TObject); 63 62 procedure TimerRedrawTimer(Sender: TObject); 64 procedure TimerSchedulerStartTimer(Sender: TObject);65 63 private 66 64 procedure Worker(MicroThread: TMicroThread); … … 215 213 begin 216 214 Iterations := SpinEdit3.Value; 215 SpinEdit2.Value := 20; 216 ButtonAddWorkers.Click; 217 ButtonSchedulerStartStop.Click; 217 218 end; 218 219 … … 224 225 with TMicroThread(MainScheduler.MicroThreads[Item.Index]) do begin 225 226 Item.Caption := IntToStr(Id); 226 Item.SubItems.Add(Name);227 227 Item.SubItems.Add(''); 228 228 Item.SubItems.Add(IntToStr(Priority)); … … 230 230 Item.SubItems.Add(MicroThreadBlockStateText[BlockState]); 231 231 Item.SubItems.Add(FloatToStr(ExecutionTime)); 232 Item.SubItems.Add(IntToStr(ExecutionCount)); 232 233 Item.SubItems.Add(IntToStr(Trunc(Completion * 100)) + '%'); 233 234 Item.SubItems.Add(IntToStr(StackUsed)); 235 Item.SubItems.Add(Name); 234 236 end; 235 237 finally … … 260 262 end; 261 263 262 procedure TMainForm.TimerSchedulerStartTimer(Sender: TObject);263 begin264 TimerSchedulerStart.Enabled := False;265 ButtonAddWorkers.Click;266 ButtonSchedulerStartStop.Click;267 end;268 269 264 procedure TMainForm.WorkerSubRoutine; 270 265 begin 271 MTSleep(1 * OneMillisecond);266 //MTSleep(1 * OneMillisecond); 272 267 end; 273 268 … … 282 277 Q := 0; 283 278 while Q < 100 do Inc(Q); 284 Synchronize(WorkerDoWrite);279 //Synchronize(WorkerDoWrite); 285 280 //Memo1.Lines.Add(IntToStr(Id) + ': ' + IntToStr(I) + ' ' + 286 281 // FloatToStr(ExecutionTime)); 287 282 Completion := I / Iterations; 288 //MTSleep(1 * Id* OneMillisecond);283 //MTSleep(1000 * OneMillisecond); 289 284 Yield; 290 WorkerSubRoutine;285 //WorkerSubRoutine; 291 286 end; 292 287 end; … … 295 290 procedure TMainForm.WorkerDoWrite; 296 291 begin 297 Memo1.Lines.Add('.');292 //Memo1.Lines.Add('.'); 298 293 end; 299 294
Note:
See TracChangeset
for help on using the changeset viewer.