A multithreaded system configured for lock-free conveyance of variable value updates as a unitary set, the system comprising: a memory containing a set of variables (218, 222) having respective non-updated values, the set including an update status indication variable and at least one other variable; a processor in operable communication with the memory, the processor configured to perform steps for conveying variable value updates as a unitary set without lock reliance, the steps including a values placing step and a values retrieving step; wherein the values placing step comprises performing the following actions in sequence: replacing a non-updated value in the update status indication variable with a different value that indicates updating is underway, wherein the value is different from all valid non-updated values and is also different from all valid update values, executing a first release barrier, replacing the non-updated value of each other variable with a respective corresponding update value, executing a second release barrier, and replacing the value in the update status indication variable with a different value that is also an update value; wherein the values retrieving step comprises performing the following actions in sequence: reading from the update status indication variable into a first destination status variable (DestVar1A), executing a first acquire barrier, reading from other variables of the set into respective destination variables, executing a second acquire barrier, reading from the update status indication variable into a second destination status variable (DestVar1B), and repeating the foregoing retrieving step actions if the first destination status variable (DestVar1A) has the value or if the first destination status variable (DestVar1A) and the second destination status variable (DestVar1B) contain different values from each other; whereby the system conveys the update values through the variables to respective destination variables without lock reliance, and the system conveys the update values as a unitary set in that after the values placing step and the values retrieving step are completed the values in the destination variables will not include both a non-updated value and an update value. a memory containing a set of variables (218, 222) having respective non-updated values, the set including an update status indication variable and at least one other variable; a processor in operable communication with the memory, the processor configured to perform steps for conveying variable value updates as a unitary set without lock reliance, the steps including a values placing step and a values retrieving step; wherein the values placing step comprises performing the following actions in sequence: replacing a non-updated value in the update status indication variable with a different value that indicates updating is underway, wherein the value is different from all valid non-updated values and is also different from all valid update values, executing a first release barrier, replacing the non-updated value of each other variable with a respective corresponding update value, executing a second release barrier, and replacing the value in the update status indication variable with a different value that is also an update value; wherein the values retrieving step comprises performing the following actions in sequence: reading from the update status indication variable into a first destination status variable (DestVar1A), executing a first acquire barrier, reading from other variables of the set into respective destination variables, executing a second acquire barrier, reading from the update status indication variable into a second destination status variable (DestVar1B), and repeating the foregoing retrieving step actions if the first destination status variable (DestVar1A) has the value or if the first destination status variable (DestVar1A) and the second destination status variable (DestVar1B) contain different values from each other; whereby the system conveys the update values through the variables to respective destination variables without lock reliance, and the system conveys the update values as a unitary set in that after the values placing step and the values retrieving step are completed the values in the destination variables will not include both a non-updated value and an update value.