| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| |
| |
| |
| | |
event-cycle (Tcl_DoOneEvent) produced in event-cycle without processing
|
| |
| |
| |
| |
| | |
generation, example:
tclsh -c "proc test {} {after 1000 test}; test; vwait infinite"
|
| |\ |
|
| | |
| | |
| | |
| | |
| | | |
object and object leakage.
closes [adb198c256df8c4192838cc3c1112fb2821314e9]
|
|\ \ \ |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
the expected uppercase characters right away from the start. No change in functionality, just code optimization.
|
| | | | |
|
| | | | |
|
| |\ \ \
| | | |/
| | |/| |
|
| | | | |
|
| | | | |
|
| | | | |
|
| |\ \ \
| | | | |
| | | | | |
(This will be useful for tclquadcode, and it addresses a basic omission in Tcl's API that made working with Tcl_Vars rather more specialized than it was ever really intended to be. However, this also closes off the part of the API that was not reasonably usable by ordinary external code; LVT indices require too deep an entanglement into Tcl's implementation.)
|
| | | | |
| | | | |
| | | | | |
(Cherrypick from [b4dfc30083])
|
| | | | |
| | | | |
| | | | |
| | | | | |
the fact that tolower() was optimized for the ASCII case as well, so this was a mistake!
|
| |\ \ \ \
| | | |/ /
| | |/| | |
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
separately: This macro already does that.
Add new test-case for Tcl_NumUtfChars(), for a knownBug still to be fixed.
|
| | |/ /
| |/| |
| | | |
| | | | |
simplifications/optimizations. No functional change.
|
| |\ \ \
| | |/ /
| | | |
| | | | |
in character tests, comment fixes. No change in functionality.
|
| | | |
| | | |
| | | |
| | | | |
documented.
|
| |\ \ \ |
|
| | | | |
| | | | |
| | | | |
| | | | | |
"sebres-8-6-clock-speedup-cr1" branch.
|
| |/ / /
| | | |
| | | |
| | | | |
UTF-8 can inject unexpected characters
|
| | | |
| | | |
| | | |
| | | | |
large lists (firstly mistakenly introduced in [af40c6fb6940bab7]), additionally simplify done-points in Tcl_LsortObjCmd.
|
| | | |
| | | |
| | | |
| | | | |
functionality, just faster if ASCII only strings are involved.
|
| | | | |
|
|\ \ \ \
| | |_|/
| |/| | |
|
| | | |
| | | |
| | | |
| | | | |
and max blocking time was not set outside an event source traversal.
|
| |\ \ \
| |/ / /
|/| | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
avoid reset block time by nested event-cycles (if Tcl_SetTimer does not create it), etc.
Fixed retarded events (using new retarded list, the involve of the retarded events occurs only after checking of all event sources now).
Two opportunities to retard event:
- lazy, using the same event-object: in the handler set event->proc to new (or the same) handler (fast, possible only if not entering new event-cycle in handler);
- create the event with new position "TCL_QUEUE_RETARDED";
New inline functions TclpQueueEventClientData / TclpQueueEventEx to fast creating resp. queuing event with extra data.
|
|\ \ \ \
| |/ / / |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
real-time"): because we use monotonic time in all wait functions, so to avoid too long wait by the absolute timers (to be able to trigger it) if time jumped to the expected absolute time, just let block for maximal 1 second if absolute timers available.
test-cases: time-jumps (TIP #302) test covered now.
Note: on some platforms it is only possible if the user has corresponding privileges to change system date and time.
Ex.: sudo LD_LIBRARY_PATH=. ./tclsh ../tests/timer.test -match timer-20.*
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
wide-clicks supported);
because of variable width of 1 wide-click: windows - frequency dependent, unix - nanoseconds, darwin/osx - tb.numer / tb.denom nanoseconds.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
windows and unix now, TIP #302 fully implemented now);
Usage of monotonic time instead of adjustment via timeJump/timeJumpEpoch is more precise and effective.
New sub-command "clock monotonic" to provide monotonic time facility for tcl-level.
|
| | | |
| | | |
| | | |
| | | | |
(too slow by large queue) - rewritten to cancel delayed (by execute it).
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
event (of the same generation), it was marked (be sure it marked to immediate execution in corresponding checkProc only).
tclIO: scheduled event rewritten using Tcl_Event instead of timer event (IO is not timer, e. g. executed also by usage of `vwait -notimer ...`, etc).
|
| | | |
| | | |
| | | |
| | | | |
socket-2.12 (busy prompt timer, unexpected too early timer event, wrong timer-marker usage)
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
* Amend to timer-marker: dualize special state of timer-marker (to differentiate between timer generations), so:
INT2PTR(-1) - exec immediate (marker reached);
INT2PTR(-2) - check in the next-cycle (marker reached only if no other events available);
Avoids permanent busy execution of prompt-events (always busy in timer), if they regenerate itself continuously for waiting for other events (like writable/readable), see e. g. socket-2.12.
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
handling, a bit faster, etc.)
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
wait before end-time, on small timeout values (like 0.5, etc.)
|