commit 1326a350eeb81fd2c165261a9f6d511b6c3bdaed from: Thomas Böhler date: Thu Mar 30 08:26:47 2023 UTC improving: explain computer code listings commit - 4668458f2f77350fe0dd79e66651ddbb55b972b5 commit + 1326a350eeb81fd2c165261a9f6d511b6c3bdaed blob - 10947267d28e80a2f1c809e534bc5b399003e038 blob + a026d5acb16779b016fb920a1fd04a6655a57dab --- src/chapters/improving_throughput/setup.tex +++ src/chapters/improving_throughput/setup.tex @@ -238,10 +238,11 @@ types are crossed. A Clippy lint \lstinline{integer_ar exists\cite{clippy:lint:integer_arithmetic} that checks that a program always uses the definded operations. -On the sending side in \enquote{ble-throughput-client}, BlueR was used as the -library for Bluetooth. As BlueR is written in idiomatic Rust it makes it -pleasant to use in Rust code. Even though it is not needed for testing -throughput it also supports the asynchronous runtime Tokio\cite{bluer:readme}.\\ +On the sending side in \enquote{ble-throughput-client} running on the computer, +BlueR was used as the library for Bluetooth. As BlueR is written in idiomatic +Rust it makes it pleasant to use in Rust code. Even though it is not needed for +testing throughput it also supports the asynchronous runtime +Tokio\cite{bluer:readme}.\\ Finding devices with BlueR is modelled with an iterator: Calling the \lstinline{next} method on this iterator waits until a new event occurred, like a new device having been discovered or a device being removed. These events can @@ -297,6 +298,11 @@ written to. Listing \ref{lst:client_write_payload} sho \end{lstlisting} \end{lstfloat} +The value that is written to the characteristic is built by an iterator, as seen +before in Listing \ref{lst:buffer_data_char_setup}. This time, though, the +values are the sequence number of writes written as \lstinline{u8}, with the +\lstinline{as} keyword truncating the value to fit in this type. + Before improving the throughput, to see how much improvement could be made, a base throughput needs to be established. The throughput of the profile mentioned above was measured with {\textasciitilde}4 \ac{kbps}. The parameters set for