updated html files
This commit is contained in:
parent
29c8282efb
commit
7dae5d5e32
1082
README.html
1082
README.html
File diff suppressed because one or more lines are too long
154
changes.html
154
changes.html
@ -12,213 +12,305 @@
|
|||||||
<h1 id="changes"><a name="changes" href="#changes"></a>Changes</h1><p class="toc" style="undefined"></p><ul>
|
<h1 id="changes"><a name="changes" href="#changes"></a>Changes</h1><p class="toc" style="undefined"></p><ul>
|
||||||
<li><ul>
|
<li><ul>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update-13.0.0-added-some-documentation,-and-some-new-features-too-check-it-out!" title="Update 13.0.0 Added some documentation, and some new features too check it out!">Update 13.0.0 Added some documentation, and some new features too check it out!</a>
|
<a href="#update-13.1.0-bug-fixes-and-features-added" title="Update 13.1.0 Bug fixes and features added">Update 13.1.0 Bug fixes and features added</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
0
|
0
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update-12.2.2-time-for-some-more-bug-fixes!" title="Update 12.2.2 Time for some more bug fixes!">Update 12.2.2 Time for some more bug fixes!</a>
|
<a href="#update-13.0.0-added-some-documentation,-and-some-new-features-too-check-it-out!" title="Update 13.0.0 Added some documentation, and some new features too check it out!">Update 13.0.0 Added some documentation, and some new features too check it out!</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
1
|
1
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update-12.2.1-time-for-some-bug-fixes!" title="Update 12.2.1 Time for some bug fixes!">Update 12.2.1 Time for some bug fixes!</a>
|
<a href="#update-12.2.2-time-for-some-more-bug-fixes!" title="Update 12.2.2 Time for some more bug fixes!">Update 12.2.2 Time for some more bug fixes!</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
2
|
2
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update-12.2.0" title="Update 12.2.0">Update 12.2.0</a>
|
<a href="#update-12.2.1-time-for-some-bug-fixes!" title="Update 12.2.1 Time for some bug fixes!">Update 12.2.1 Time for some bug fixes!</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
3
|
3
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update-12.1.0" title="Update 12.1.0">Update 12.1.0</a>
|
<a href="#update-12.2.0" title="Update 12.2.0">Update 12.2.0</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
4
|
4
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update:-12.0.0-big-update-(lots-of-additions-some-changes)" title="Update: 12.0.0 Big update (Lots of additions some changes)">Update: 12.0.0 Big update (Lots of additions some changes)</a>
|
<a href="#update-12.1.0" title="Update 12.1.0">Update 12.1.0</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
5
|
5
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update:-1.11.1" title="Update: 1.11.1">Update: 1.11.1</a>
|
<a href="#update:-12.0.0-big-update-(lots-of-additions-some-changes)" title="Update: 12.0.0 Big update (Lots of additions some changes)">Update: 12.0.0 Big update (Lots of additions some changes)</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
6
|
6
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update:-1.11.0" title="Update: 1.11.0">Update: 1.11.0</a>
|
<a href="#update:-1.11.1" title="Update: 1.11.1">Update: 1.11.1</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
7
|
7
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update:-1.10.0" title="Update: 1.10.0">Update: 1.10.0</a>
|
<a href="#update:-1.11.0" title="Update: 1.11.0">Update: 1.11.0</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
8
|
8
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update:-1.9.2" title="Update: 1.9.2">Update: 1.9.2</a>
|
<a href="#update:-1.10.0" title="Update: 1.10.0">Update: 1.10.0</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
9
|
9
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update:-1.9.1" title="Update: 1.9.1">Update: 1.9.1</a>
|
<a href="#update:-1.9.2" title="Update: 1.9.2">Update: 1.9.2</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
10
|
10
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update:-1.9.0" title="Update: 1.9.0">Update: 1.9.0</a>
|
<a href="#update:-1.9.1" title="Update: 1.9.1">Update: 1.9.1</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
11
|
11
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update:-1.8.7" title="Update: 1.8.7">Update: 1.8.7</a>
|
<a href="#update:-1.9.0" title="Update: 1.9.0">Update: 1.9.0</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
12
|
12
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update:-1.8.6" title="Update: 1.8.6">Update: 1.8.6</a>
|
<a href="#update:-1.8.7" title="Update: 1.8.7">Update: 1.8.7</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
13
|
13
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update:-1.8.5" title="Update: 1.8.5">Update: 1.8.5</a>
|
<a href="#update:-1.8.6" title="Update: 1.8.6">Update: 1.8.6</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
14
|
14
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update:-1.8.4" title="Update: 1.8.4">Update: 1.8.4</a>
|
<a href="#update:-1.8.5" title="Update: 1.8.5">Update: 1.8.5</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
15
|
15
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update:-1.8.3" title="Update: 1.8.3">Update: 1.8.3</a>
|
<a href="#update:-1.8.4" title="Update: 1.8.4">Update: 1.8.4</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
16
|
16
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update:-1.8.2" title="Update: 1.8.2">Update: 1.8.2</a>
|
<a href="#update:-1.8.3" title="Update: 1.8.3">Update: 1.8.3</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
17
|
17
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update:-1.8.1" title="Update: 1.8.1">Update: 1.8.1</a>
|
<a href="#update:-1.8.2" title="Update: 1.8.2">Update: 1.8.2</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
18
|
18
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update:-1.7.6" title="Update: 1.7.6">Update: 1.7.6</a>
|
<a href="#update:-1.8.1" title="Update: 1.8.1">Update: 1.8.1</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
19
|
19
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update:-1.7.5" title="Update: 1.7.5">Update: 1.7.5</a>
|
<a href="#update:-1.7.6" title="Update: 1.7.6">Update: 1.7.6</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
20
|
20
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update:-1.7.4" title="Update: 1.7.4">Update: 1.7.4</a>
|
<a href="#update:-1.7.5" title="Update: 1.7.5">Update: 1.7.5</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
21
|
21
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update:-1.7.3" title="Update: 1.7.3">Update: 1.7.3</a>
|
<a href="#update:-1.7.4" title="Update: 1.7.4">Update: 1.7.4</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
22
|
22
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update:-1.7.2" title="Update: 1.7.2">Update: 1.7.2</a>
|
<a href="#update:-1.7.3" title="Update: 1.7.3">Update: 1.7.3</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
23
|
23
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update:-1.7.1-bug-fixes-only" title="Update: 1.7.1 Bug Fixes Only">Update: 1.7.1 Bug Fixes Only</a>
|
<a href="#update:-1.7.2" title="Update: 1.7.2">Update: 1.7.2</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
24
|
24
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update:-1.7.0" title="Update: 1.7.0">Update: 1.7.0</a>
|
<a href="#update:-1.7.1-bug-fixes-only" title="Update: 1.7.1 Bug Fixes Only">Update: 1.7.1 Bug Fixes Only</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
25
|
25
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update:-1.6.0" title="Update: 1.6.0">Update: 1.6.0</a>
|
<a href="#update:-1.7.0" title="Update: 1.7.0">Update: 1.7.0</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
26
|
26
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update:-1.5.0" title="Update: 1.5.0">Update: 1.5.0</a>
|
<a href="#update:-1.6.0" title="Update: 1.6.0">Update: 1.6.0</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
27
|
27
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
<li><span class="title">
|
<li><span class="title">
|
||||||
<a href="#update:-1.4.1---first-public-release-of-the-library" title="Update: 1.4.1 - First Public release of the library">Update: 1.4.1 - First Public release of the library</a>
|
<a href="#update:-1.5.0" title="Update: 1.5.0">Update: 1.5.0</a>
|
||||||
</span>
|
</span>
|
||||||
<!--span class="number">
|
<!--span class="number">
|
||||||
28
|
28
|
||||||
</span-->
|
</span-->
|
||||||
</li>
|
</li>
|
||||||
|
<li><span class="title">
|
||||||
|
<a href="#update:-1.4.1---first-public-release-of-the-library" title="Update: 1.4.1 - First Public release of the library">Update: 1.4.1 - First Public release of the library</a>
|
||||||
|
</span>
|
||||||
|
<!--span class="number">
|
||||||
|
29
|
||||||
|
</span-->
|
||||||
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<p></p><h2 id="update-13.0.0-added-some-documentation,-and-some-new-features-too-check-it-out!"><a name="update-13.0.0-added-some-documentation,-and-some-new-features-too-check-it-out!" href="#update-13.0.0-added-some-documentation,-and-some-new-features-too-check-it-out!"></a>Update 13.0.0 Added some documentation, and some new features too check it out!</h2><p><strong>Quick note</strong> on the 13.0.0 update:<br>This update I went all in finding bugs and improving proformance within the library. I added some new features and the new task manager, which I used as a way to debug the library was a great help, so much so thats it is now a permanent feature. It’s been about half a year since my last update, but so much work needed to be done. I hope you can find a use in your code to use my library. I am extremely proud of my work; 7 years of development, I learned so much about lua and programming through the creation of this library. It was fun, but there will always be more to add and bugs crawling there way in. I can’t wait to see where this library goes in the future!</p><p>Fixed: Tons of bugs, I actually went through the entire library and did a full test of everything, I mean everything, while writing the documentation.<br>Changed: </p><ul>
|
<p></p><h2 id="update-13.1.0-bug-fixes-and-features-added"><a name="update-13.1.0-bug-fixes-and-features-added" href="#update-13.1.0-bug-fixes-and-features-added"></a>Update 13.1.0 Bug fixes and features added</h2><p>Added: </p><ul>
|
||||||
|
<li>Connections:Lock() — Prevents a connection object form being fired</li><li>Connections:Unlock() — Removes the restriction imposed by conn:Lock()</li><li>new fucntions added to the thread namespace<br>— thread.request(THREAD handle,STRING cmd,VARARGS args) — allows you to push thread requests from outside the running thread! Extremely powerful.<br>— thread.exec(FUNCTION func) — Allows you to push code to run within the thread execution block!</li><li>handle = multi:newThread() — now returns a thread handle to interact with the object outside fo the thread<br>— handle:Pause()<br>— handle:Resume()<br>— handle:Kill()</li></ul><p>Fixed:</p><ul>
|
||||||
|
<li>Minor bug with multi:newThread() in how names and functions were managed</li><li>Major bug with the system thread handler. Saw healthy threads as dead ones</li><li>Major bug the thread scheduler was seen creating a massive amount of ‘event’ causing memory leaks and hard crashes! This has been fixed by changing how the scheduler opperates. </li><li>newSystemThread()’s returned object now matches both the lanes and love2d in terms of methods that are usable. Error handling of System threads now behave the same across both love and lanes implementations.</li><li>looks like I found a typo, thread.yeild -> thread.yield</li></ul><p>Changed: </p><ul>
|
||||||
|
<li>getTasksDetails(“t”), the table varaiant, formats threads, and system threads in the same way that tasks are formatted. Please see below for the format of the task details</li><li>TID has been added to multi objects. They count up from 0 and no 2 objects will have the same number</li><li>thread.hold() — As part of the memory leaks that I had to fix thread.hold() is slightly different. This change shouldn’t impact previous code at all, but thread.hold() can not only return at most 7 arguments!</li><li>You should notice some faster code execution from threads, the changes improve preformance of threads greatly. They are now much faster than before!</li><li>multi:threadloop() — No longer runs normal multi objects at all! The new change completely allows the multi objects to be seperated from the thread objects!</li><li>local multi, thread = require(“multi”) — Since coroutine based threading has seen a change to how it works, requring the multi library now returns the namespace for the threading interface as well. For now I will still inject into global the thread namespace, but in release 13.2.0 or 14.0.0 It will be removed!</li></ul><h1 id="tasks-details-table-format"><a name="tasks-details-table-format" href="#tasks-details-table-format"></a>Tasks Details Table format</h1><pre><code data-origin="<pre><code>{
|
||||||
|
["Tasks"] = {
|
||||||
|
{
|
||||||
|
["TID"] = 0,
|
||||||
|
["Type"] = scheduler,
|
||||||
|
["Name"] = multi.thread,
|
||||||
|
["Priority"] = Core,
|
||||||
|
["Uptime"] = 6.752
|
||||||
|
["Link"] = tableRef
|
||||||
|
},
|
||||||
|
...
|
||||||
|
} ,
|
||||||
|
|
||||||
|
["Systemthreads"] = {
|
||||||
|
{
|
||||||
|
["Uptime"] = 6.752
|
||||||
|
["Link"] = tableRef
|
||||||
|
["Name"] = threadname
|
||||||
|
["ThreadID"] = 0
|
||||||
|
},
|
||||||
|
...
|
||||||
|
},
|
||||||
|
|
||||||
|
["Threads"] = {
|
||||||
|
{
|
||||||
|
["Uptime"] = 6.752
|
||||||
|
["Link"] = tableRef
|
||||||
|
["Name"] = threadname
|
||||||
|
["ThreadID"] = 0
|
||||||
|
},
|
||||||
|
...
|
||||||
|
},
|
||||||
|
|
||||||
|
["ProcessName"] = multi.root,
|
||||||
|
["CyclesPerSecondPerTask"] = 3560300,
|
||||||
|
["MemoryUsage"] = 1846, in KB returned as a number
|
||||||
|
["ThreadCount"] = 1,
|
||||||
|
["SystemLoad"] = 0, as a % 100 is max 0 is min
|
||||||
|
["PriorityScheme"] = Round-Robin
|
||||||
|
["SystemThreadCount"] = 1
|
||||||
|
}
|
||||||
|
</code></pre>">{
|
||||||
|
["Tasks"] = {
|
||||||
|
{
|
||||||
|
["TID"] = 0,
|
||||||
|
["Type"] = scheduler,
|
||||||
|
["Name"] = multi.thread,
|
||||||
|
["Priority"] = Core,
|
||||||
|
["Uptime"] = 6.752
|
||||||
|
["Link"] = tableRef
|
||||||
|
},
|
||||||
|
...
|
||||||
|
} ,
|
||||||
|
|
||||||
|
["Systemthreads"] = {
|
||||||
|
{
|
||||||
|
["Uptime"] = 6.752
|
||||||
|
["Link"] = tableRef
|
||||||
|
["Name"] = threadname
|
||||||
|
["ThreadID"] = 0
|
||||||
|
},
|
||||||
|
...
|
||||||
|
},
|
||||||
|
|
||||||
|
["Threads"] = {
|
||||||
|
{
|
||||||
|
["Uptime"] = 6.752
|
||||||
|
["Link"] = tableRef
|
||||||
|
["Name"] = threadname
|
||||||
|
["ThreadID"] = 0
|
||||||
|
},
|
||||||
|
...
|
||||||
|
},
|
||||||
|
|
||||||
|
["ProcessName"] = multi.root,
|
||||||
|
["CyclesPerSecondPerTask"] = 3560300,
|
||||||
|
["MemoryUsage"] = 1846, in KB returned as a number
|
||||||
|
["ThreadCount"] = 1,
|
||||||
|
["SystemLoad"] = 0, as a % 100 is max 0 is min
|
||||||
|
["PriorityScheme"] = Round-Robin
|
||||||
|
["SystemThreadCount"] = 1
|
||||||
|
}
|
||||||
|
</code></pre><h2 id="update-13.0.0-added-some-documentation,-and-some-new-features-too-check-it-out!"><a name="update-13.0.0-added-some-documentation,-and-some-new-features-too-check-it-out!" href="#update-13.0.0-added-some-documentation,-and-some-new-features-too-check-it-out!"></a>Update 13.0.0 Added some documentation, and some new features too check it out!</h2><p><strong>Quick note</strong> on the 13.0.0 update:<br>This update I went all in finding bugs and improving proformance within the library. I added some new features and the new task manager, which I used as a way to debug the library was a great help, so much so thats it is now a permanent feature. It’s been about half a year since my last update, but so much work needed to be done. I hope you can find a use in your code to use my library. I am extremely proud of my work; 7 years of development, I learned so much about lua and programming through the creation of this library. It was fun, but there will always be more to add and bugs crawling there way in. I can’t wait to see where this library goes in the future!</p><p>Fixed: Tons of bugs, I actually went through the entire library and did a full test of everything, I mean everything, while writing the documentation.<br>Changed: </p><ul>
|
||||||
<li>A few things, to make concepts in the library more clear.</li><li>The way functions returned paused status. Before it would return “PAUSED” now it returns nil, true if paused</li><li>Modified the connection object to allow for some more syntaxial suger!</li><li>System threads now trigger an OnError connection that is a member of the object itself. multi.OnError() is no longer triggered for a system thread that crashes!</li></ul><p>Connection Example:</p><pre class="lua hljs"><code class="lua" data-origin="<pre><code class="lua">loop = multi:newTLoop(function(self)
|
<li>A few things, to make concepts in the library more clear.</li><li>The way functions returned paused status. Before it would return “PAUSED” now it returns nil, true if paused</li><li>Modified the connection object to allow for some more syntaxial suger!</li><li>System threads now trigger an OnError connection that is a member of the object itself. multi.OnError() is no longer triggered for a system thread that crashes!</li></ul><p>Connection Example:</p><pre class="lua hljs"><code class="lua" data-origin="<pre><code class="lua">loop = multi:newTLoop(function(self)
|
||||||
self:OnLoops() -- new way to Fire a connection! Only works when used on a multi object, bin objects, or any object that contains a Type variable
|
self:OnLoops() -- new way to Fire a connection! Only works when used on a multi object, bin objects, or any object that contains a Type variable
|
||||||
end,1)
|
end,1)
|
||||||
@ -249,7 +341,7 @@ print(func()) -- nil, true
|
|||||||
<span class="hljs-built_in">print</span>(func()) <span class="hljs-comment">-- nil, true</span>
|
<span class="hljs-built_in">print</span>(func()) <span class="hljs-comment">-- nil, true</span>
|
||||||
</code></pre><p>Removed:</p><ul>
|
</code></pre><p>Removed:</p><ul>
|
||||||
<li>Ranges and conditions — corutine based threads can emulate what these objects did and much better!</li><li>Due to the creation of hyper threaded processes the following objects are no more!<br>— <del>multi:newThreadedEvent()</del><br>— <del>multi:newThreadedLoop()</del><br>— <del>multi:newThreadedTLoop()</del><br>— <del>multi:newThreadedStep()</del><br>— <del>multi:newThreadedTStep()</del><br>— <del>multi:newThreadedAlarm()</del><br>— <del>multi:newThreadedUpdater()</del><br>— <del>multi:newTBase()</del> — Acted as the base for creating the other objects</li></ul><p>These didn’t have much use in their previous form, but with the addition of hyper threaded processes the goals that these objects aimed to solve are now possible using a process</p><p>Fixed:</p><ul>
|
<li>Ranges and conditions — corutine based threads can emulate what these objects did and much better!</li><li>Due to the creation of hyper threaded processes the following objects are no more!<br>— <del>multi:newThreadedEvent()</del><br>— <del>multi:newThreadedLoop()</del><br>— <del>multi:newThreadedTLoop()</del><br>— <del>multi:newThreadedStep()</del><br>— <del>multi:newThreadedTStep()</del><br>— <del>multi:newThreadedAlarm()</del><br>— <del>multi:newThreadedUpdater()</del><br>— <del>multi:newTBase()</del> — Acted as the base for creating the other objects</li></ul><p>These didn’t have much use in their previous form, but with the addition of hyper threaded processes the goals that these objects aimed to solve are now possible using a process</p><p>Fixed:</p><ul>
|
||||||
<li>There were some bugs in the networkmanager.lua file. Desrtoy -> Destroy some misspellings.</li><li>Massive object management bugs which caused performance to drop like a rock.</li><li>Found a bug with processors not having the Destroy() function implemented properly.</li><li>Found an issue with the rockspec which is due to the networkManager additon. The net Library and the multi Library are now codependent if using that feature. Going forward you will have to now install the network library separately</li><li>Insane proformance bug found in the networkManager file, where each connection to a node created a new thread (VERY BAD) If say you connected to 100s of threads, you would lose a lot of processing power due to a bad implementation of this feature. But it goes futhur than this, the net library also creates a new thread for each connection made, so times that initial 100 by about 3, you end up with a system that quickly eats itself. I have to do tons of rewriting of everything. Yet another setback for the 13.0.0 release (Im releasing 13.0.0 though this hasn’t been ironed out just yet)</li><li>Fixed an issue where any argument greater than 256^2 or 65536 bytes is sent the networkmanager would soft crash. This was fixed by increading the limit to 256^4 or 4294967296. The fix was changing a 2 to a 4. Arguments greater than 256^4 would be impossible in 32 bit lua, and highly unlikely even in lua 64 bit. Perhaps someone is reading an entire file into ram and then sending the entire file that they read over a socket for some reason all at once!?</li><li>Fixed an issue with processors not properly destroying objects within them and not being destroyable themselves</li><li>Fixed a bug where pause and resume would duplicate objects! Not good</li><li>Noticed that the switching of lua states, corutine based threading, is slower than multi-objs (Not by much though).</li><li>multi:newSystemThreadedConnection(name,protect) — I did it! It works and I believe all the gotchas are fixed as well.<br>— Issue one, if a thread died that was connected to that connection all connections would stop since the queue would get clogged! FIXED<br>— There is one thing, the connection does have some handshakes that need to be done before it functions as normal!</li></ul><p>Added:</p><ul>
|
<li>There were some bugs in the networkmanager.lua file. Desrtoy -> Destroy some misspellings.</li><li>Massive object management bugs which caused performance to drop like a rock.</li><li>Found a bug with processors not having the Destroy() function implemented properly.</li><li>Found an issue with the rockspec which is due to the networkManager additon. The net Library and the multi Library are now codependent if using that feature. Going forward you will have to now install the network library separately</li><li>Insane proformance bug found in the networkManager file, where each connection to a node created a new thread (VERY BAD) If say you connected to 100s of threads, you would lose a lot of processing power due to a bad implementation of this feature. But it goes further than this, the net library also creates a new thread for each connection made, so times that initial 100 by about 3, you end up with a system that quickly eats itself. I have to do tons of rewriting of everything. Yet another setback for the 13.0.0 release (Im releasing 13.0.0 though this hasn’t been ironed out just yet)</li><li>Fixed an issue where any argument greater than 256^2 or 65536 bytes is sent the networkmanager would soft crash. This was fixed by increading the limit to 256^4 or 4294967296. The fix was changing a 2 to a 4. Arguments greater than 256^4 would be impossible in 32 bit lua, and highly unlikely even in lua 64 bit. Perhaps someone is reading an entire file into ram and then sending the entire file that they read over a socket for some reason all at once!?</li><li>Fixed an issue with processors not properly destroying objects within them and not being destroyable themselves</li><li>Fixed a bug where pause and resume would duplicate objects! Not good</li><li>Noticed that the switching of lua states, corutine based threading, is slower than multi-objs (Not by much though).</li><li>multi:newSystemThreadedConnection(name,protect) — I did it! It works and I believe all the gotchas are fixed as well.<br>— Issue one, if a thread died that was connected to that connection all connections would stop since the queue would get clogged! FIXED<br>— There is one thing, the connection does have some handshakes that need to be done before it functions as normal!</li></ul><p>Added:</p><ul>
|
||||||
<li>Documentation, the purpose of 13.0.0, orginally going to be 12.2.3, but due to the amount of bugs and features added it couldn’t be a simple bug fix update.</li><li>multi:newHyperThreadedProcess(STRING name) — This is a version of the threaded process that gives each object created its own coroutine based thread which means you can use thread.* without affecting other objects created within the hyper threaded processes. Though, creating a self contained single thread is a better idea which when I eventually create the wiki page I’ll discuss</li><li>multi:newConnector() — A simple object that allows you to use the new connection Fire syntax without using a multi obj or the standard object format that I follow.</li><li>multi:purge() — Removes all references to objects that are contained withing the processes list of tasks to do. Doing this will stop all objects from functioning. Calling Resume on an object should make it work again.</li><li>multi:getTasksDetails(STRING format) — Simple function, will get massive updates in the future, as of right now It will print out the current processes that are running; listing their type, uptime, and priority. More useful additions will be added in due time. Format can be either a string “s” or “t” see below for the table format</li><li>multi:endTask(TID) — Use multi:getTasksDetails(“t”) to get the tid of a task</li><li>multi:enableLoadDetection() — Reworked how load detection works. It gives better values now, but it still needs some work before I am happy with it</li><li>THREAD.getID() — returns a unique ID for the current thread. This varaiable is visible to the main thread as well by accessing it through the returned thread object. OBJ.Id Do not confuse this with thread.* this refers to the system threading interface. Each thread, including the main thread has a threadID the main thread has an ID of 0!</li><li>multi.print(…) works like normal print, but only prints if the setting print is set to true</li><li>setting: <code>print</code> enables multi.print() to work</li><li>STC: IgnoreSelf defaults to false, if true a Fire command will not be sent to the self</li><li>STC: OnConnectionAdded(function(connID)) — Is fired when a connection is added you can use STC:FireTo(id,…) to trigger a specific connection. Works like the named non threaded connections, only the id’s are genereated for you.</li><li>STC: FireTo(id,…) — Described above.</li></ul><pre class="lua hljs"><code class="lua" data-origin="<pre><code class="lua">package.path="?/init.lua;?.lua;"..package.path
|
<li>Documentation, the purpose of 13.0.0, orginally going to be 12.2.3, but due to the amount of bugs and features added it couldn’t be a simple bug fix update.</li><li>multi:newHyperThreadedProcess(STRING name) — This is a version of the threaded process that gives each object created its own coroutine based thread which means you can use thread.* without affecting other objects created within the hyper threaded processes. Though, creating a self contained single thread is a better idea which when I eventually create the wiki page I’ll discuss</li><li>multi:newConnector() — A simple object that allows you to use the new connection Fire syntax without using a multi obj or the standard object format that I follow.</li><li>multi:purge() — Removes all references to objects that are contained withing the processes list of tasks to do. Doing this will stop all objects from functioning. Calling Resume on an object should make it work again.</li><li>multi:getTasksDetails(STRING format) — Simple function, will get massive updates in the future, as of right now It will print out the current processes that are running; listing their type, uptime, and priority. More useful additions will be added in due time. Format can be either a string “s” or “t” see below for the table format</li><li>multi:endTask(TID) — Use multi:getTasksDetails(“t”) to get the tid of a task</li><li>multi:enableLoadDetection() — Reworked how load detection works. It gives better values now, but it still needs some work before I am happy with it</li><li>THREAD.getID() — returns a unique ID for the current thread. This varaiable is visible to the main thread as well by accessing it through the returned thread object. OBJ.Id Do not confuse this with thread.* this refers to the system threading interface. Each thread, including the main thread has a threadID the main thread has an ID of 0!</li><li>multi.print(…) works like normal print, but only prints if the setting print is set to true</li><li>setting: <code>print</code> enables multi.print() to work</li><li>STC: IgnoreSelf defaults to false, if true a Fire command will not be sent to the self</li><li>STC: OnConnectionAdded(function(connID)) — Is fired when a connection is added you can use STC:FireTo(id,…) to trigger a specific connection. Works like the named non threaded connections, only the id’s are genereated for you.</li><li>STC: FireTo(id,…) — Described above.</li></ul><pre class="lua hljs"><code class="lua" data-origin="<pre><code class="lua">package.path="?/init.lua;?.lua;"..package.path
|
||||||
local multi = require("multi")
|
local multi = require("multi")
|
||||||
conn = multi:newConnector()
|
conn = multi:newConnector()
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user