SEARCH KEYWORD -- PASS BY VALUE
The hidden risk of passing slice as function parameter
In Go's source code or other open source libraries, there are lots of cases where a slice pointer is passed to function instead of slice itself. This brings up a doubt why not passing slice directly as its internal is backed by an array pointer to point to underlying data? For example, in log package, the formatHeader function takes a parameter buf as type *[]byte instead of []byte. func (l *Logger) formatHeader(buf *[]byte, t time.Time, file string, line int) {} Let's understand the r...
GOLANG,SLICE,SLICE POINTER 2020-12-13 06:11:14
Google's new pirate penalty doesn't affect YouTube
Google has just announced a new policy: sites with high numbers of removal notices may appear lower in our results. However, this new policy may not affect the company's video site YouTube. In fact, they themselves clearly know that there are copyright protected contents on YouTube.According to a report published by Search Engine Land, through the "Removing Content From Google" page, users can remove content from the Google services with valid reasons, the services including Google Play, Google+...
A mini post on GoLang context
In a GoLang web server, every request coming in will be handled by a goroutine. In the request handler, the logic may also need to create new goroutine to handle other tasks like RPC call. When the request is processed and response is returned, these goroutines created need to be exited so that no goroutine leak should happen. package main import ( "fmt" "log" "net/http" ) func main() { http.HandleFunc("/echo", func(w http.ResponseWriter, r *http.Request) { fmt.Println(&r) w.Write(...
Microsoft to lay off Zune
Recently we can see many news about Microsoft's Windows 8, Microsoft puts much effort to promote Windows 8. A few days ago, Microsoft announced the death of Windows Live brand, instead they will integrate it into the Windows system. Also, Microsoft now plans to lay off its Zune and focus on XBox, let XBox be the main entertainment service of Microsoft. XBox can provide music and videos, it can also let users play video games.Here is a part of Microsoft's announcement:This year, Xbox ...
Private LLM Integration with RAGFlow: A Step-by-Step Guide
If you’ve found your way here, you’re probably already excited about the potential of the RAGFlow project and eager to see it in action. I was in the same position, so I delved into the codebase to see how it could work with custom large language models (LLMs). This post will walk you through my findings and show you how to get RAGFlow running with your own LLM. As of now (November 8, 2024), RAGFlow offers limited support for local LLMs, and vLLM&nb...
errGroup in GoLang explained
Today, let's talk about the usage and applicable scenarios of errGroup, which is often used. Why is it useful? Generally, when we use goroutine, we cannot return a value. If you want to pass out the result of the goroutine execution, you usually have to use the channel. The errGroup package is suitable if you want to know when the goroutine you opened encounters an error during execution and stop working, and I need to know the error value. errGroup usage The package needs to be downloaded and i...
GOLANG,ERRGROUP,WAITHROUP,CONCURRENCY 2023-05-27 23:58:20
Get associated file icon with only extension name using C++ on Windows
I have searched on Google for a few examples on how to get associated file icon with only file extension name using C++ on Windows. There are some useful information provided on MSDN which explains the use of SHGetFileInfo() function.It also gives an example code, but it doesn't say how to do it with only the extension name. Here I give an example code on how to achieve this after I gathered and summarized some useful information from Internet. I have tested the code on my PC, it w...
File icon,Windows,Association,Extension name,C++ 2012-03-26 09:55:20
Generate first N prime numbers
Recently I am taking an online course named "Startup Engineering" on coursera. There is one assignment which is to use NodeJS to write a program to generate the first 100 prime numbers. This may be very easy for many people. Here I just want to share with you the code to generate not only the first 100 prime numbers. but also any number of prime numbers. Below is the code snippet: //Helper class to generate prime numbers var PrimeProcessor=(function(){ var primeArray=[]; functio...
Algorithm,Prime number,NodeJS,coursera,JavaScript 2013-06-29 22:08:22
GoLang Interview Questions
Below lists some frequently asked GoLang interview questions and their corresponding answers based on the author's experience. The list is updated frequently with new understandings. Stay tuned. What is the GMP model of GoLang? GoLang uses goroutine to achieve concurrency and it is famous for high concurrency support as the language defines its own goroutine dispatching and processing system which is well known as GMP model. How it works is that M is normally defined as the OS thread being spawn...
MEMORY,CONCURRENCY,INTERVIEW QUESTION,GOLANG 2024-05-25 03:08:18
ConcurrentHashMap vs Collections.synchronizedMap()
ConcurrentHashMap and Collections.synchronizedMap() both provide thread-safe operations of collections of data. They are used in multithreaded programs to provide both thread safety and performance improvements. In many cases, we can use either of them. But the realization of thread safety is different for these two implementations. ConcurrentHashMap will create an HashEntry[] array internally to store the elements passed in from a Map, while Collections.synchronizedMap() will return a Synchroni...
ConcurrentHashMap,Collections.synchronizedMap 2014-09-18 05:04:59
RECENT
- How Artificial Intelligence Is Helping Fight Environmental Challenges
- How to Deal with Accusations of Negligence as a Business
- Google's Business Operations in China Amid Antitrust Scrutiny
- Deploying DeepSeek-R1 Locally with a Custom RAG Knowledge Data Base
- Balancing Convenience and Security in the Digital World
- My AI Learning Journey: Exploring the Future of Technology
- Power Grid Simulation System 02 : FDI Power Outage Attack Case Study
- Be Careful When Using Cursor to Help Build Application
- Calculating Token Count for Claude API Using Go: A Step-by-Step Guide
- Understanding Cursor and WindSurf's Code Indexing Logic
- more>>