Sample code for 30+ languages & platforms
Lua Requires Chilkat v11.0.0+

Example: Socket.DupSocket method

See more Socket/SSL/TLS Examples

Demonstrates how to call the DupSocket method.

Chilkat Lua Downloads

Lua
local chilkat = require("chilkat")

local socket = chilkat.Socket.new()
local success = socket:connect("example.com", 443, true, 5000)

-- ...
-- ...

-- Duplicate the socket to share the same connection across threads.
-- In a multithreaded application, each thread should use its own socket object. For example:

-- - The main thread can use the original socket for reading.
-- - A secondary thread can use a duplicate for writing.
-- - Another thread can use a separate duplicate to monitor the connection status.

local socket_for_sending = chilkat.Socket.new()
success = socket:dup_socket(socket_for_sending)
if not success then
    print(socket.last_error_text)
    return
end

local socket_for_monitor = chilkat.Socket.new()
success = socket:dup_socket(socket_for_monitor)
if not success then
    print(socket.last_error_text)
    return
end

-- All three socket objects: socket, socket_for_sending, and socket_for_monitor share the same underlying connection.