hewei.it 4 gadi atpakaļ
vecāks
revīzija
3f3ace275a
2 mainītis faili ar 8 papildinājumiem un 4 dzēšanām
  1. 4 1
      CMakeLists.txt
  2. 4 3
      evpp/TcpServer.h

+ 4 - 1
CMakeLists.txt

@@ -179,7 +179,10 @@ if(BUILD_SHARED)
     target_compile_definitions(hv PRIVATE HV_DYNAMICLIB)
     target_include_directories(hv PRIVATE ${LIBHV_SRCDIRS})
     target_link_libraries(hv ${LIBS})
-    install(TARGETS hv DESTINATION lib)
+    install(TARGETS hv
+        ARCHIVE DESTINATION lib
+        LIBRARY DESTINATION lib
+        RUNTIME DESTINATION bin)
     add_custom_target(libhv DEPENDS hv)
 endif()
 

+ 4 - 3
evpp/TcpServer.h

@@ -80,15 +80,16 @@ public:
 
     // channel
     const SocketChannelPtr& addChannel(hio_t* io) {
-        std::lock_guard<std::mutex> locker(mutex_);
         int fd = hio_fd(io);
-        channels[fd] = SocketChannelPtr(new SocketChannel(io));
+        auto channel = SocketChannelPtr(new SocketChannel(io));
+        std::lock_guard<std::mutex> locker(mutex_);
+        channels[fd] = channel;
         return channels[fd];
     }
 
     void removeChannel(const SocketChannelPtr& channel) {
-        std::lock_guard<std::mutex> locker(mutex_);
         int fd = channel->fd();
+        std::lock_guard<std::mutex> locker(mutex_);
         channels.erase(fd);
     }