Software /
code /
prosody
File
.lua-format @ 13552:f0b2c026e542
net.server_epoll: Improve efficiency of sending much buffered data
Problem: The string slice operations when a lot of data gets buffered
ends up being expensive and memory-consuming. We have util.dbuffer for
precisely this kind of thing.
I want to keep the behavior of writebuffer being upgraded from nil to a
string to full buffer since the last step involves three table
allocations, where the previous buffer method only used one. Avoiding
those allocations for simple writes like white space keep alive feels
like it would keep memory churn down.
This work was started in 2020
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sat, 09 Nov 2024 00:37:15 +0100 |
parent | 13377:81ae5e12550f |
line wrap: on
line source
align_args: false align_parameter: false align_table_field: true break_after_functioncall_lp: false break_after_functiondef_lp: false break_after_operator: false break_after_table_lb: true break_before_functioncall_rp: false break_before_functiondef_rp: false break_before_table_rb: true chop_down_kv_table: true chop_down_parameter: false chop_down_table: true column_limit: 150 column_table_limit: 120 continuation_indent_width: 1 double_quote_to_single_quote: false extra_sep_at_table_end: true indent_width: 1 keep_simple_control_block_one_line: true keep_simple_function_one_line: true line_breaks_after_function_body: 1 line_separator: input single_quote_to_double_quote: false spaces_around_equals_in_field: true spaces_before_call: 1 spaces_inside_functioncall_parens: false spaces_inside_functiondef_parens: false spaces_inside_table_braces: true tab_width: 1 table_sep: ";" use_tab: true